Loading src/modules/GenericPropagation/GenericPropagationModule.cpp +4 −5 Original line number Diff line number Diff line Loading @@ -433,11 +433,10 @@ GenericPropagationModule::propagate(const ROOT::Math::XYZPoint& pos, // Compute the independent diffusion in three allpix::normal_distribution<double> gauss_distribution(0, diffusion_std_dev); Eigen::Vector3d diffusion{}; for(int i = 0; i < 3; ++i) { diffusion[i] = gauss_distribution(random_generator); } return diffusion; auto x = gauss_distribution(random_generator); auto y = gauss_distribution(random_generator); auto z = gauss_distribution(random_generator); return Eigen::Vector3d(x, y, z); }; // Survival or detrap probability of this charge carrier package, evaluated at every step Loading src/modules/GeometryBuilderGeant4/DetectorConstructionG4.cpp +12 −12 Original line number Diff line number Diff line Loading @@ -101,14 +101,14 @@ void DetectorConstructionG4::build(const std::shared_ptr<G4LogicalVolume>& world LOG(TRACE) << "Applying stereo angle of " << Units::display(stereo_angle, "mrad"); // Transformation for the angled cylindrical section auto* angled_tub_rot = new G4RotationMatrix(); angled_tub_rot->rotateZ(stereo_angle); auto angled_tub_rot = G4RotationMatrix(); angled_tub_rot.rotateZ(stereo_angle); auto center_radius = radial_model->getCenterRadius(); auto* angled_tub_pos = new G4ThreeVector(center_radius * sin(stereo_angle), -center_radius * (1 - cos(stereo_angle)), 0); auto* angled_tub_trf = new G4Transform3D(*angled_tub_rot, *angled_tub_pos); auto angled_tub_pos = G4ThreeVector(center_radius * sin(stereo_angle), -center_radius * (1 - cos(stereo_angle)), 0); auto angled_tub_trf = G4Transform3D(angled_tub_rot, angled_tub_pos); auto wrapper_final_tub = make_shared_no_delete<G4IntersectionSolid>( "wrapper_" + name, wrapper_base_tub, wrapper_angled_tub, *angled_tub_trf); "wrapper_" + name, wrapper_base_tub, wrapper_angled_tub, angled_tub_trf); solids_.push_back(wrapper_final_tub); } else { // Create the wrapper box Loading Loading @@ -193,14 +193,14 @@ void DetectorConstructionG4::build(const std::shared_ptr<G4LogicalVolume>& world auto stereo_angle = radial_model->getStereoAngle(); // Transformation for the angled cylindrical section auto* angled_tub_rot = new G4RotationMatrix(); angled_tub_rot->rotateZ(stereo_angle); auto angled_tub_rot = G4RotationMatrix(); angled_tub_rot.rotateZ(stereo_angle); auto center_radius = radial_model->getCenterRadius(); auto* angled_tub_pos = new G4ThreeVector(center_radius * sin(stereo_angle), -center_radius * (1 - cos(stereo_angle)), 0); auto* angled_tub_trf = new G4Transform3D(*angled_tub_rot, *angled_tub_pos); auto angled_tub_pos = G4ThreeVector(center_radius * sin(stereo_angle), -center_radius * (1 - cos(stereo_angle)), 0); auto angled_tub_trf = G4Transform3D(angled_tub_rot, angled_tub_pos); auto sensor_final_tub = make_shared_no_delete<G4IntersectionSolid>( "wrapper_" + name, sensor_base_tub, sensor_angled_tub, *angled_tub_trf); "wrapper_" + name, sensor_base_tub, sensor_angled_tub, angled_tub_trf); solids_.push_back(sensor_final_tub); } else { auto sensor_box = make_shared_no_delete<G4Box>("sensor_" + name, Loading src/modules/TransientPropagation/TransientPropagationModule.cpp +4 −5 Original line number Diff line number Diff line Loading @@ -435,11 +435,10 @@ TransientPropagationModule::propagate(Event* event, // Compute the independent diffusion in three allpix::normal_distribution<double> gauss_distribution(0, diffusion_std_dev); Eigen::Vector3d diffusion{}; for(int i = 0; i < 3; ++i) { diffusion[i] = gauss_distribution(event->getRandomEngine()); } return diffusion; auto x = gauss_distribution(event->getRandomEngine()); auto y = gauss_distribution(event->getRandomEngine()); auto z = gauss_distribution(event->getRandomEngine()); return Eigen::Vector3d(x, y, z); }; // Survival probability of this charge carrier package, evaluated at every step Loading Loading
src/modules/GenericPropagation/GenericPropagationModule.cpp +4 −5 Original line number Diff line number Diff line Loading @@ -433,11 +433,10 @@ GenericPropagationModule::propagate(const ROOT::Math::XYZPoint& pos, // Compute the independent diffusion in three allpix::normal_distribution<double> gauss_distribution(0, diffusion_std_dev); Eigen::Vector3d diffusion{}; for(int i = 0; i < 3; ++i) { diffusion[i] = gauss_distribution(random_generator); } return diffusion; auto x = gauss_distribution(random_generator); auto y = gauss_distribution(random_generator); auto z = gauss_distribution(random_generator); return Eigen::Vector3d(x, y, z); }; // Survival or detrap probability of this charge carrier package, evaluated at every step Loading
src/modules/GeometryBuilderGeant4/DetectorConstructionG4.cpp +12 −12 Original line number Diff line number Diff line Loading @@ -101,14 +101,14 @@ void DetectorConstructionG4::build(const std::shared_ptr<G4LogicalVolume>& world LOG(TRACE) << "Applying stereo angle of " << Units::display(stereo_angle, "mrad"); // Transformation for the angled cylindrical section auto* angled_tub_rot = new G4RotationMatrix(); angled_tub_rot->rotateZ(stereo_angle); auto angled_tub_rot = G4RotationMatrix(); angled_tub_rot.rotateZ(stereo_angle); auto center_radius = radial_model->getCenterRadius(); auto* angled_tub_pos = new G4ThreeVector(center_radius * sin(stereo_angle), -center_radius * (1 - cos(stereo_angle)), 0); auto* angled_tub_trf = new G4Transform3D(*angled_tub_rot, *angled_tub_pos); auto angled_tub_pos = G4ThreeVector(center_radius * sin(stereo_angle), -center_radius * (1 - cos(stereo_angle)), 0); auto angled_tub_trf = G4Transform3D(angled_tub_rot, angled_tub_pos); auto wrapper_final_tub = make_shared_no_delete<G4IntersectionSolid>( "wrapper_" + name, wrapper_base_tub, wrapper_angled_tub, *angled_tub_trf); "wrapper_" + name, wrapper_base_tub, wrapper_angled_tub, angled_tub_trf); solids_.push_back(wrapper_final_tub); } else { // Create the wrapper box Loading Loading @@ -193,14 +193,14 @@ void DetectorConstructionG4::build(const std::shared_ptr<G4LogicalVolume>& world auto stereo_angle = radial_model->getStereoAngle(); // Transformation for the angled cylindrical section auto* angled_tub_rot = new G4RotationMatrix(); angled_tub_rot->rotateZ(stereo_angle); auto angled_tub_rot = G4RotationMatrix(); angled_tub_rot.rotateZ(stereo_angle); auto center_radius = radial_model->getCenterRadius(); auto* angled_tub_pos = new G4ThreeVector(center_radius * sin(stereo_angle), -center_radius * (1 - cos(stereo_angle)), 0); auto* angled_tub_trf = new G4Transform3D(*angled_tub_rot, *angled_tub_pos); auto angled_tub_pos = G4ThreeVector(center_radius * sin(stereo_angle), -center_radius * (1 - cos(stereo_angle)), 0); auto angled_tub_trf = G4Transform3D(angled_tub_rot, angled_tub_pos); auto sensor_final_tub = make_shared_no_delete<G4IntersectionSolid>( "wrapper_" + name, sensor_base_tub, sensor_angled_tub, *angled_tub_trf); "wrapper_" + name, sensor_base_tub, sensor_angled_tub, angled_tub_trf); solids_.push_back(sensor_final_tub); } else { auto sensor_box = make_shared_no_delete<G4Box>("sensor_" + name, Loading
src/modules/TransientPropagation/TransientPropagationModule.cpp +4 −5 Original line number Diff line number Diff line Loading @@ -435,11 +435,10 @@ TransientPropagationModule::propagate(Event* event, // Compute the independent diffusion in three allpix::normal_distribution<double> gauss_distribution(0, diffusion_std_dev); Eigen::Vector3d diffusion{}; for(int i = 0; i < 3; ++i) { diffusion[i] = gauss_distribution(event->getRandomEngine()); } return diffusion; auto x = gauss_distribution(event->getRandomEngine()); auto y = gauss_distribution(event->getRandomEngine()); auto z = gauss_distribution(event->getRandomEngine()); return Eigen::Vector3d(x, y, z); }; // Survival probability of this charge carrier package, evaluated at every step Loading