Commit a2f39f11 authored by Petr Chudoba's avatar Petr Chudoba
Browse files

Merge branch 'revert-b5d60103' into 'master'

Revert "Adds vacuum in the beampipe geometries for 21e - max beam deflection 2.5deg;..."

See merge request !1
parents b5d60103 c17d6cdc
......@@ -281,17 +281,10 @@ void create_bpipe_geometry_v21e(const char* geoTag = "v21e")
//TGeoVolume* conical_beam_pipe = geom->MakeBox("conical_beam_pipe", Vacuum, 220 * mm, 220 * mm, 1825 * mm);
TGeoVolume* conical_beam_pipe = new TGeoVolumeAssembly("conical_beam_pipe");
conical_beam_pipe->SetVisibility(kFALSE);
TGeoVolume* vacuum_conical_beam_pipe = new TGeoVolumeAssembly("vacuum_conical_beam_pipe");
vacuum_conical_beam_pipe->SetVisibility(kFALSE);
//TGeoVolume* bellow_ass = geom->MakeBox("Bellow assembly", Vacuum, 350 * mm, 220 * mm, 600 * mm);
TGeoVolume* bellow_ass = new TGeoVolumeAssembly("Bellow assembly");
bellow_ass->SetVisibility(kFALSE);
TGeoVolume* vacuum_bellow_ass = new TGeoVolumeAssembly("Vacuum_bellow assembly");
vacuum_bellow_ass->SetVisibility(kFALSE);
// TOP PLATE--------------------------------------------------------------------------------------
TGeoVolume* sub_t_plate1 = geom->MakeArb8("sub_t_plate1", CF, top_plate_cord[2]);
sub_t_plate1->SetLineColor(kGray);
......@@ -501,44 +494,26 @@ void create_bpipe_geometry_v21e(const char* geoTag = "v21e")
r_arb1->SetVertex(7, rail_cord[3], rail_cord[1] + rail_cord[4]);
TGeoBBox* flange_box = new TGeoBBox("flange_box", 15.2, 15.2, 1.5);
TGeoTube* flange_hole = new TGeoTube("flange_hole", 0., 12.5, 1.6);
TGeoTube* flange_hole = new TGeoTube("flange_hole", 0., 12.5, 2.5);
// DOWNSTREAM_CARBON-FIBRE_RICH_MUCH_FLANGE_TO_BELLOW_ASS------------------------------------------------------------------------------------
TGeoBBox* rich_much_flange_box = new TGeoBBox("rich_much_flange_box", 15.2, 15.2, 1.5);
TGeoTube* rich_much_flange_hole = new TGeoTube("rich_much_flange_hole", 0., 12.55, 1.6);
TGeoTube* rich_much_flange_hole = new TGeoTube("rich_much_flange_hole", 0., 12.5, 2.5);
TGeoCompositeShape* rich_much_flange_composite =
new TGeoCompositeShape("flange_composite_rich", "rich_much_flange_box-rich_much_flange_hole");
TGeoVolume* rich_much_downstream_flange =
new TGeoVolume("rich_much_downstream_flange", rich_much_flange_composite, CF);
rich_much_downstream_flange->SetLineColor(kGray);
// VACUUM IN THE FLANGE----------------------------------------------------------------------------------------------
TGeoTube* vacuum_flange_hole = new TGeoTube("vacuum_flange_hole", 0., 12.5, 1.5);
TGeoVolume* vacuum_downstream_flange =
new TGeoVolume("vacuum_downstream_flange", vacuum_flange_hole, Vacuum);
vacuum_downstream_flange->SetLineColor(kRed);
// CONICAL_BEAM_PIPE----------------------------------------------------------------------------------------------------------
// CONICAL_BEAM_PIPE WITH CARBONE-FIBRE FLANGE AND TILTED END PIECE OF TUBE TO STS SECTION------------------------------------------------------------------------------------
TGeoCone* conus = new TGeoCone("conus", conus_lenght, rmin1, rmax1, rmin2, rmax2);
TGeoVolume* conus_volume = new TGeoVolume("conus_volume", conus, CF);
conus_volume->SetLineColor(kGray);
//-------------------------------VACUUM IN CONE-------------------------------------------------------------------
TGeoCone* vacuum_conus = new TGeoCone("vacuum_conus", conus_lenght, 0, rmin1, 0, rmin2);
TGeoVolume* vacuum_conus_volume = new TGeoVolume("vacuum_conus_volume", vacuum_conus, Vacuum);
vacuum_conus_volume->SetLineColor(kGreen);
// CONNECTING TUBE--------------------------------------------------------------------------------------------------------------------------------------------------------
TGeoCtub* tube_connection = new TGeoCtub("tube_connection", 55. * mm, 56. * mm, 15. * mm, 0., 360., -0.05235892, 0., 4.99972585, 0., 0., 1.);
TGeoVolume* tube_connection_volume = new TGeoVolume("tube_connection_volume", tube_connection, CF);
tube_connection_volume->SetLineColor(kGray);
//------------------------VACUUM IN THE CONNECTING TUBE--------------------------------------------------------------
TGeoCtub* vacuum_tube_connection = new TGeoCtub("vacuum_tube_connection", 0. * mm, 55. * mm, 15. * mm, 0., 360., -0.05235892, 0., 4.99972585, 0., 0., 1.);
TGeoVolume* vacuum_tube_connection_volume = new TGeoVolume("vacuum_tube_connection_volume", vacuum_tube_connection, Vacuum);
vacuum_tube_connection_volume->SetLineColor(kGreen);
// STS tube-----------------------------------------------------------------------------------------------------
TGeoCtub* tube_connection_sts = new TGeoCtub("tube_connection_sts", 55. * mm, 56. * mm, 15. * mm, 0., 360., 0., 0., 1., 0.05235892, 0., 4.99972585);
TGeoVolume* tube_connection_sts_volume = new TGeoVolume("tube_connection_sts_volume", tube_connection_sts, CF);
tube_connection_sts_volume->SetLineColor(kGray);
......@@ -563,50 +538,23 @@ void create_bpipe_geometry_v21e(const char* geoTag = "v21e")
TGeoVolume* bellow_3 = new TGeoVolume("bellow_s3", bellow_s3, Stainless);
bellow_3->SetLineColor(kRed);
TGeoCtub* bellow_s4 = new TGeoCtub("bellow_s4", 124. * mm, 142. * mm, 25.306 * mm, 0., 360., -0.024210927, 0.,
TGeoCtub* bellow_s4 = new TGeoCtub("bellow_s4", 124. * mm, 142. * mm, 25.30673722 * mm, 0., 360., -0.024210927, 0.,
-0.999706873, -0.083697266, 0., 0.996491228);
TGeoVolume* bellow_4 = new TGeoVolume("bellow_s3", bellow_s4, Stainless);
bellow_4->SetLineColor(kRed);
//-------------------------------VACUUM BELLOW DEFINITION----------------------------------------------------------------
TGeoVolume* vacuum_bellow_flange_0 = new TGeoVolume("vacuum_bellow_flange_0", vacuum_flange_hole, Vacuum);
vacuum_bellow_flange_0->SetLineColor(kGreen);
TGeoCtub* vacuum_bellow_s1 = new TGeoCtub("vacuum_bellow_s1", 0. * mm, 123.8 * mm, 29.87452196 * mm, 0., 360., -0.083697266, 0.,
-0.996491228, -0.122217128, 0., 0.992503387);
TGeoVolume* vacuum_bellow_1 = new TGeoVolume("vacuum_bellow_s1", vacuum_bellow_s1, Vacuum);
vacuum_bellow_1->SetLineColor(kGreen);
TGeoCtub* vacuum_bellow_s2 = new TGeoCtub("vacuum_bellow_s1", 0. * mm, 123.8 * mm, 96.682942995 * mm, 0., 360., -0.122217128, 0.,
-0.992503387, 0.089898314, 0, 0.995950949);
TGeoVolume* vacuum_bellow_2 = new TGeoVolume("vacuum_bellow_s2", vacuum_bellow_s2, Vacuum);
vacuum_bellow_2->SetLineColor(kGreen);
TGeoCtub* vacuum_bellow_s3 = new TGeoCtub("vacuum_bellow_s3", 0. * mm, 123.8 * mm, 22.10506784 * mm, 0., 360., -0.089898314, 0.,
-0.995950949, -0.024210927, 0., 0.999706873);
TGeoVolume* vacuum_bellow_3 = new TGeoVolume("vacuum_bellow_s3", vacuum_bellow_s3, Vacuum);
vacuum_bellow_3->SetLineColor(kGreen);
TGeoCtub* vacuum_bellow_s4 = new TGeoCtub("vacuum_bellow_s4", 0. * mm, 123.8 * mm, 25.306 * mm, 0., 360., -0.024210927, 0.,
-0.999706873, -0.083697266, 0., 0.996491228);
TGeoVolume* vacuum_bellow_4 = new TGeoVolume("vacuum_bellow_s4", vacuum_bellow_s4, Vacuum);
vacuum_bellow_4->SetLineColor(kGreen);
TGeoBBox* roll_plate_s = new TGeoBBox("roll_plate_s", 75. * mm, 12.5 * mm, 90. * mm);
TGeoVolume* roll_plate = new TGeoVolume("roll_plate", roll_plate_s, Al);
roll_plate->SetLineColor(kBlue);
TGeoTube* flange_cyl = new TGeoTube("flange_cyl", 0., 15., 1.5);
TGeoTube* flange_cyl_hole = new TGeoTube("flange_cyl_hole", 0., 8.9, 1.6);
TGeoTube* flange_cyl_hole = new TGeoTube("flange_cyl_hole", 0., 8.9, 2.5);
TGeoCompositeShape* flange_cyl_composite = new TGeoCompositeShape(
"flange_cyl_composite", "((flange_cyl-flange_cyl_hole)-roll_plate_s:tr_plate_up)-roll_plate_s:tr_plate_down");
TGeoVolume* bellow_flange_1 = new TGeoVolume("bellow_flange_1", flange_cyl_composite, Stainless);
bellow_flange_1->SetLineColor(kRed);
//-------------------------------VACUUM FLANGE BELLOW------------------------------------------------------------------
TGeoTube* vacuum_flange_cyl_hole = new TGeoTube("vacuum_flange_cyl_hole", 0., 8.9, 1.5);
TGeoVolume* vacuum_bellow_flange_1 = new TGeoVolume("vacuum_bellow_flange_1", vacuum_flange_cyl_hole, Vacuum);
vacuum_bellow_flange_1->SetLineColor(kGreen);
TGeoTube* lead_screw_s = new TGeoTube("lead_screw_s", 0. * mm, 6. * mm, 205. * mm);
TGeoTube* nut_small_s = new TGeoTube("nut_small_s", 6. * mm, 14. * mm, 50. * mm);
......@@ -627,11 +575,6 @@ void create_bpipe_geometry_v21e(const char* geoTag = "v21e")
TGeoVolume* psd_tube = new TGeoVolume("psd_tube", psd_tube_s, CF);
psd_tube->SetLineColor(kGray);
//------------------------------VACUUM PSD TUBE-------------------------------------------------------------------------
TGeoTube* vacuum_psd_tube_s = new TGeoTube("vacuum_psd_tube_s", 0. * mm, 90. * mm, 7230. * mm);
TGeoVolume* vacuum_psd_tube = new TGeoVolume("vacuum_psd_tube", vacuum_psd_tube_s, Vacuum);
vacuum_psd_tube->SetLineColor(kGreen);
//------------------TOP plate------------------------------
bellow_ass->AddNode(sub_t_plate1, 1, tr_top_0a);
bellow_ass->AddNode(sub_t_plate2, 1, tr_top_1a);
......@@ -684,15 +627,6 @@ void create_bpipe_geometry_v21e(const char* geoTag = "v21e")
bellow_ass->AddNode(bellow_4, 1, ctr_s4);
bellow_ass->AddNode(bellow_flange_1, 1, ctr_s5);
//-----------------Vacuum in bellow and flanges
vacuum_bellow_ass->AddNode(vacuum_bellow_flange_0, 1, new TGeoTranslation(0, 0, 1.5));
vacuum_bellow_ass->AddNode(vacuum_bellow_1, 1, ctr_s1);
vacuum_bellow_ass->AddNode(vacuum_bellow_2, 1, ctr_s2);
vacuum_bellow_ass->AddNode(vacuum_bellow_3, 1, ctr_s3);
vacuum_bellow_ass->AddNode(vacuum_bellow_4, 1, ctr_s4);
vacuum_bellow_ass->AddNode(vacuum_bellow_flange_1, 1, ctr_s5);
//------------------DRIVE assembly--------------------------------------
bellow_ass->AddNode(roll_plate, 1, ctr_plate_up);
bellow_ass->AddNode(roll_plate, 2, ctr_plate_down);
......@@ -706,18 +640,10 @@ void create_bpipe_geometry_v21e(const char* geoTag = "v21e")
//conical_beam_pipe->AddNode(tube_connection_sts_volume, 1, ctr_sts_tube); //unexplained "nonexisting" overlap
//conical_beam_pipe->AddNode(rich_much_upstream_tube_connection_volume, 1, ctr_sts_tube);
//-------------------VACUUM in CONICAL section--------------------------------------------------
//vacuum_conical_beam_pipe->AddNode(vacuum_downstream_flange, 1, new TGeoTranslation(0, 0, 1570 * mm)); // not needed
vacuum_conical_beam_pipe->AddNode(vacuum_conus_volume, 1, new TGeoTranslation(0, 0, 0));
vacuum_conical_beam_pipe->AddNode(vacuum_tube_connection_volume, 1, ctr_sts_conus_connection);
//------------------INSERT into top volume
full_assembly->AddNode(conical_beam_pipe, 1, origin_combi_cone);
full_assembly->AddNode(bellow_ass, 1, origin_combi);
full_assembly->AddNode(psd_tube, 1, ctr_psd_tube);
full_assembly->AddNode(vacuum_conical_beam_pipe, 1, origin_combi_cone);
full_assembly->AddNode(vacuum_bellow_ass, 1, origin_combi);
full_assembly->AddNode(vacuum_psd_tube, 1, ctr_psd_tube);
//beampipe->AddNode(full_assembly,1, new TGeoTranslation(0, 0, 0*mm));
// --- close the geometry
......@@ -742,6 +668,6 @@ void create_bpipe_geometry_v21e(const char* geoTag = "v21e")
binfile->Close();
//--- close the geometry
geom->CloseGeometry();
//gGeoManager->CheckOverlaps(0.000001);
//gGeoManager->GetListOfOverlaps()->Print();
// gGeoManager->CheckOverlaps(0.0001);
// gGeoManager->GetListOfOverlaps()->Print();
}
......@@ -279,17 +279,10 @@ void create_bpipe_geometry_v21f(const char* geoTag = "v21f")
//TGeoVolume* conical_beam_pipe = geom->MakeBox("conical_beam_pipe", Vacuum, 220 * mm, 220 * mm, 1825 * mm);
TGeoVolume* conical_beam_pipe = new TGeoVolumeAssembly("conical_beam_pipe");
conical_beam_pipe->SetVisibility(kFALSE);
TGeoVolume* vacuum_conical_beam_pipe = new TGeoVolumeAssembly("vacuum_conical_beam_pipe");
vacuum_conical_beam_pipe->SetVisibility(kFALSE);
//TGeoVolume* bellow_ass = geom->MakeBox("Bellow assembly", Vacuum, 350 * mm, 220 * mm, 600 * mm);
TGeoVolume* bellow_ass = new TGeoVolumeAssembly("Bellow assembly");
bellow_ass->SetVisibility(kFALSE);
TGeoVolume* vacuum_bellow_ass = new TGeoVolumeAssembly("Vacuum_bellow assembly");
vacuum_bellow_ass->SetVisibility(kFALSE);
// TOP PLATE--------------------------------------------------------------------------------------
TGeoVolume* sub_t_plate1 = geom->MakeArb8("sub_t_plate1", CF, top_plate_cord[2]);
sub_t_plate1->SetLineColor(kGray);
......@@ -499,45 +492,27 @@ void create_bpipe_geometry_v21f(const char* geoTag = "v21f")
r_arb1->SetVertex(7, rail_cord[3], rail_cord[1] + rail_cord[4]);
TGeoBBox* flange_box = new TGeoBBox("flange_box", 15.2, 15.2, 1.5);
TGeoTube* flange_hole = new TGeoTube("flange_hole", 0., 12.5, 1.6);
TGeoTube* flange_hole = new TGeoTube("flange_hole", 0., 12.5, 2.5);
// DOWNSTREAM_CARBON-FIBRE_RICH_MUCH_FLANGE_TO_BELLOW_ASS------------------------------------------------------------------------------------
TGeoBBox* rich_much_flange_box = new TGeoBBox("rich_much_flange_box", 15.2, 15.2, 1.5);
TGeoTube* rich_much_flange_hole = new TGeoTube("rich_much_flange_hole", 0., 12.55, 1.6);
TGeoTube* rich_much_flange_hole = new TGeoTube("rich_much_flange_hole", 0., 12.5, 2.5);
TGeoCompositeShape* rich_much_flange_composite =
new TGeoCompositeShape("flange_composite_rich", "rich_much_flange_box-rich_much_flange_hole");
TGeoVolume* rich_much_downstream_flange =
new TGeoVolume("rich_much_downstream_flange", rich_much_flange_composite, CF);
rich_much_downstream_flange->SetLineColor(kGray);
// VACUUM IN THE FLANGE----------------------------------------------------------------------------------------------
TGeoTube* vacuum_flange_hole = new TGeoTube("vacuum_flange_hole", 0., 12.5, 1.5);
TGeoVolume* vacuum_downstream_flange =
new TGeoVolume("vacuum_downstream_flange", vacuum_flange_hole, Vacuum);
vacuum_downstream_flange->SetLineColor(kRed);
// CONICAL_BEAM_PIPE----------------------------------------------------------------------------------------------------------
// CONICAL_BEAM_PIPE WITH CARBONE-FIBRE FLANGE AND TILTED END PIECE OF TUBE TO STS SECTION------------------------------------------------------------------------------------
TGeoCone* conus = new TGeoCone("conus", conus_lenght, rmin1, rmax1, rmin2, rmax2);
TGeoVolume* conus_volume = new TGeoVolume("conus_volume", conus, CF);
conus_volume->SetLineColor(kGray);
//-------------------------------VACUUM IN CONE-------------------------------------------------------------------
TGeoCone* vacuum_conus = new TGeoCone("vacuum_conus", conus_lenght, 0, rmin1, 0, rmin2);
TGeoVolume* vacuum_conus_volume = new TGeoVolume("vacuum_conus_volume", vacuum_conus, Vacuum);
vacuum_conus_volume->SetLineColor(kGreen);
// CONNECTING TUBE--------------------------------------------------------------------------------------------------------------------------------------------------------
TGeoCtub* tube_connection = new TGeoCtub("tube_connection", 55. * mm, 56. * mm, 15. * mm, 0., 360., -0.05235892, 0., 4.99972585, 0., 0., 1.);
TGeoCtub* tube_connection = new TGeoCtub("tube_connection", 55. * mm, 56. * mm, 15. * mm, 0., 360., 0.05235892, 0., 4.99972585, 0., 0., 1.);
TGeoVolume* tube_connection_volume = new TGeoVolume("tube_connection_volume", tube_connection, CF);
tube_connection_volume->SetLineColor(kGray);
//------------------------VACUUM IN THE CONNECTING TUBE--------------------------------------------------------------
TGeoCtub* vacuum_tube_connection = new TGeoCtub("vacuum_tube_connection", 0. * mm, 55. * mm, 15. * mm, 0., 360., -0.05235892, 0., 4.99972585, 0., 0., 1.);
TGeoVolume* vacuum_tube_connection_volume = new TGeoVolume("vacuum_tube_connection_volume", vacuum_tube_connection, Vacuum);
vacuum_tube_connection_volume->SetLineColor(kGreen);
// STS tube-----------------------------------------------------------------------------------------------------
TGeoCtub* tube_connection_sts = new TGeoCtub("tube_connection_sts", 55. * mm, 56. * mm, 15. * mm, 0., 360., 0., 0., 1., 0.05235892, 0., 4.99972585);
TGeoCtub* tube_connection_sts = new TGeoCtub("tube_connection_sts", 55. * mm, 56. * mm, 15. * mm, 0., 360., 0., 0., 1., -0.05235892, 0., 4.99972585);
TGeoVolume* tube_connection_sts_volume = new TGeoVolume("tube_connection_sts_volume", tube_connection_sts, CF);
tube_connection_sts_volume->SetLineColor(kGray);
......@@ -566,46 +541,18 @@ void create_bpipe_geometry_v21f(const char* geoTag = "v21f")
TGeoVolume* bellow_4 = new TGeoVolume("bellow_s3", bellow_s4, Stainless);
bellow_4->SetLineColor(kRed);
//-------------------------------VACUUM BELLOW DEFINITION----------------------------------------------------------------
TGeoVolume* vacuum_bellow_flange_0 = new TGeoVolume("vacuum_bellow_flange_0", vacuum_flange_hole, Vacuum);
vacuum_bellow_flange_0->SetLineColor(kGreen);
TGeoCtub* vacuum_bellow_s1 = new TGeoCtub("vacuum_bellow_s1", 0 * mm, 121.9435 * mm, 55.64459032 * mm, 0., 360., -0.206, 0.,
-0.979, -0.206, 0., 0.979);
TGeoVolume* vacuum_bellow_1 = new TGeoVolume("vacuum_bellow_s1", vacuum_bellow_s1, Vacuum);
vacuum_bellow_1->SetLineColor(kGreen);
TGeoCtub* vacuum_bellow_s2 = new TGeoCtub("vacuum_bellow_s2", 0 * mm, 124.842 * mm, 58.3156 * mm, 0., 360., -0.04705248, 0.,
-0.998892419, 0.04705248, 0, 0.998892419);
TGeoVolume* vacuum_bellow_2 = new TGeoVolume("vacuum_bellow_s2", vacuum_bellow_s2, Vacuum);
vacuum_bellow_2->SetLineColor(kGreen);
TGeoCtub* vacuum_bellow_s3 = new TGeoCtub("vacuum_bellow_s3", 0 * mm, 123.5175 * mm, 40.5 * mm, 0., 360., -0.1439, 0.,
-0.9896, -0.1439, 0., 0.9896);
TGeoVolume* vacuum_bellow_3 = new TGeoVolume("vacuum_bellow_s3", vacuum_bellow_s3, Vacuum);
vacuum_bellow_3->SetLineColor(kGreen);
TGeoCtub* vacuum_bellow_s4 = new TGeoCtub("vacuum_bellow_s4", 0 * mm, 124.8025 * mm, 22.5 * mm, 0., 360., -0.0526, 0.,
-0.9972, -0.0526, 0., 0.9972);
TGeoVolume* vacuum_bellow_4 = new TGeoVolume("vacuum_bellow_s3", vacuum_bellow_s4, Vacuum);
vacuum_bellow_4->SetLineColor(kGreen);
TGeoBBox* roll_plate_s = new TGeoBBox("roll_plate_s", 75. * mm, 12.5 * mm, 90. * mm);
TGeoVolume* roll_plate = new TGeoVolume("roll_plate", roll_plate_s, Al);
roll_plate->SetLineColor(kBlue);
TGeoTube* flange_cyl = new TGeoTube("flange_cyl", 0., 15., 1.5);
TGeoTube* flange_cyl_hole = new TGeoTube("flange_cyl_hole", 0., 8.9, 1.6);
TGeoTube* flange_cyl_hole = new TGeoTube("flange_cyl_hole", 0., 8.9, 2.5);
TGeoCompositeShape* flange_cyl_composite = new TGeoCompositeShape(
"flange_cyl_composite", "((flange_cyl-flange_cyl_hole)-roll_plate_s:tr_plate_up)-roll_plate_s:tr_plate_down");
TGeoVolume* bellow_flange_1 = new TGeoVolume("bellow_flange_1", flange_cyl_composite, Stainless);
bellow_flange_1->SetLineColor(kRed);
//-------------------------------VACUUM FLANGE BELLOW------------------------------------------------------------------
TGeoTube* vacuum_flange_cyl_hole = new TGeoTube("vacuum_flange_cyl_hole", 0., 8.9, 1.5);
TGeoVolume* vacuum_bellow_flange_1 = new TGeoVolume("vacuum_bellow_flange_1", vacuum_flange_cyl_hole, Vacuum);
vacuum_bellow_flange_1->SetLineColor(kGreen);
TGeoTube* lead_screw_s = new TGeoTube("lead_screw_s", 0. * mm, 6. * mm, 205. * mm);
TGeoTube* nut_small_s = new TGeoTube("nut_small_s", 6. * mm, 14. * mm, 50. * mm);
......@@ -626,11 +573,6 @@ void create_bpipe_geometry_v21f(const char* geoTag = "v21f")
TGeoVolume* psd_tube = new TGeoVolume("psd_tube", psd_tube_s, CF);
psd_tube->SetLineColor(kGray);
//------------------------------VACUUM PSD TUBE-------------------------------------------------------------------------
TGeoTube* vacuum_psd_tube_s = new TGeoTube("vacuum_psd_tube_s", 0. * mm, 90. * mm, 7230. * mm);
TGeoVolume* vacuum_psd_tube = new TGeoVolume("vacuum_psd_tube", vacuum_psd_tube_s, Vacuum);
vacuum_psd_tube->SetLineColor(kGreen);
//------------------TOP plate------------------------------
bellow_ass->AddNode(sub_t_plate1, 1, tr_top_0a);
bellow_ass->AddNode(sub_t_plate2, 1, tr_top_1a);
......@@ -683,14 +625,6 @@ void create_bpipe_geometry_v21f(const char* geoTag = "v21f")
bellow_ass->AddNode(bellow_4, 1, ctr_s4);
bellow_ass->AddNode(bellow_flange_1, 1, ctr_s5);
//-----------------Vacuum in bellow and flanges
vacuum_bellow_ass->AddNode(vacuum_bellow_flange_0, 1, new TGeoTranslation(0, 0, 1.5));
vacuum_bellow_ass->AddNode(vacuum_bellow_1, 1, ctr_s1);
vacuum_bellow_ass->AddNode(vacuum_bellow_2, 1, ctr_s2);
vacuum_bellow_ass->AddNode(vacuum_bellow_3, 1, ctr_s3);
vacuum_bellow_ass->AddNode(vacuum_bellow_4, 1, ctr_s4);
vacuum_bellow_ass->AddNode(vacuum_bellow_flange_1, 1, ctr_s5);
//------------------DRIVE assembly--------------------------------------
bellow_ass->AddNode(roll_plate, 1, ctr_plate_up);
bellow_ass->AddNode(roll_plate, 2, ctr_plate_down);
......@@ -704,18 +638,10 @@ void create_bpipe_geometry_v21f(const char* geoTag = "v21f")
conical_beam_pipe->AddNode(tube_connection_volume, 1, ctr_sts_conus_connection);
//conical_beam_pipe->AddNode(tube_connection_sts_volume, 1, ctr_sts_tube); //unexplained "nonexisting" overlap
//-------------------VACUUM in CONICAL section--------------------------------------------------
//vacuum_conical_beam_pipe->AddNode(vacuum_downstream_flange, 1, new TGeoTranslation(0, 0, 1570 * mm)); // not needed
vacuum_conical_beam_pipe->AddNode(vacuum_conus_volume, 1, new TGeoTranslation(0, 0, 0));
vacuum_conical_beam_pipe->AddNode(vacuum_tube_connection_volume, 1, ctr_sts_conus_connection);
//------------------INSERT into top volume
full_assembly->AddNode(conical_beam_pipe, 1, origin_combi_cone);
full_assembly->AddNode(bellow_ass, 1, origin_combi);
full_assembly->AddNode(psd_tube, 1, ctr_psd_tube);
full_assembly->AddNode(vacuum_conical_beam_pipe, 1, origin_combi_cone);
full_assembly->AddNode(vacuum_bellow_ass, 1, origin_combi);
full_assembly->AddNode(vacuum_psd_tube, 1, ctr_psd_tube);
//beampipe->AddNode(full_assembly,1, new TGeoTranslation(0, 0, 0*mm));
// --- close the geometry
......@@ -740,6 +666,6 @@ void create_bpipe_geometry_v21f(const char* geoTag = "v21f")
binfile->Close();
//--- close the geometry
geom->CloseGeometry();
//gGeoManager->CheckOverlaps(0.000001);
//gGeoManager->GetListOfOverlaps()->Print();
// gGeoManager->CheckOverlaps(0.0001);
// gGeoManager->GetListOfOverlaps()->Print();
}
......@@ -286,17 +286,10 @@ void create_bpipe_geometry_v21g(const char* geoTag = "v21g")
//TGeoVolume* conical_beam_pipe = geom->MakeBox("conical_beam_pipe", Vacuum, 220 * mm, 220 * mm, 1825 * mm);
TGeoVolume* conical_beam_pipe = new TGeoVolumeAssembly("conical_beam_pipe");
conical_beam_pipe->SetVisibility(kFALSE);
TGeoVolume* vacuum_conical_beam_pipe = new TGeoVolumeAssembly("vacuum_conical_beam_pipe");
vacuum_conical_beam_pipe->SetVisibility(kFALSE);
//TGeoVolume* bellow_ass = geom->MakeBox("Bellow assembly", Vacuum, 350 * mm, 220 * mm, 600 * mm);
TGeoVolume* bellow_ass = new TGeoVolumeAssembly("Bellow assembly");
bellow_ass->SetVisibility(kFALSE);
TGeoVolume* vacuum_bellow_ass = new TGeoVolumeAssembly("Vacuum_bellow assembly");
vacuum_bellow_ass->SetVisibility(kFALSE);
// TOP PLATE--------------------------------------------------------------------------------------
TGeoVolume* sub_t_plate1 = geom->MakeArb8("sub_t_plate1", CF, top_plate_cord[2]);
sub_t_plate1->SetLineColor(kGray);
......@@ -506,46 +499,34 @@ void create_bpipe_geometry_v21g(const char* geoTag = "v21g")
r_arb1->SetVertex(7, rail_cord[3], rail_cord[1] + rail_cord[4]);
TGeoBBox* flange_box = new TGeoBBox("flange_box", 15.2, 15.2, 1.5);
TGeoTube* flange_hole = new TGeoTube("flange_hole", 0., 12.5, 1.6);
TGeoTube* flange_hole = new TGeoTube("flange_hole", 0., 12.5, 2.5);
// DOWNSTREAM_CARBON-FIBRE_RICH_MUCH_FLANGE_TO_BELLOW_ASS------------------------------------------------------------------------------------
TGeoBBox* rich_much_flange_box = new TGeoBBox("rich_much_flange_box", 15.2, 15.2, 1.5);
TGeoTube* rich_much_flange_hole = new TGeoTube("rich_much_flange_hole", 0., 12.55, 1.6);
TGeoTube* rich_much_flange_hole = new TGeoTube("rich_much_flange_hole", 0., 12.5, 2.5);
TGeoCompositeShape* rich_much_flange_composite =
new TGeoCompositeShape("flange_composite_rich", "rich_much_flange_box-rich_much_flange_hole");
TGeoVolume* rich_much_downstream_flange =
new TGeoVolume("rich_much_downstream_flange", rich_much_flange_composite, CF);
rich_much_downstream_flange->SetLineColor(kGray);
// VACUUM IN THE FLANGE----------------------------------------------------------------------------------------------
TGeoTube* vacuum_flange_hole = new TGeoTube("vacuum_flange_hole", 0., 12.5, 1.5);
TGeoVolume* vacuum_downstream_flange =
new TGeoVolume("vacuum_downstream_flange", vacuum_flange_hole, Vacuum);
vacuum_downstream_flange->SetLineColor(kRed);
// CONICAL_BEAM_PIPE----------------------------------------------------------------------------------------------------------
// CONICAL_BEAM_PIPE WITH CARBONE-FIBRE FLANGE AND TILTED END PIECE OF TUBE TO STS SECTION------------------------------------------------------------------------------------
TGeoCone* conus = new TGeoCone("conus", conus_lenght, rmin1, rmax1, rmin2, rmax2);
TGeoVolume* conus_volume = new TGeoVolume("conus_volume", conus, CF);
conus_volume->SetLineColor(kGray);
//-------------------------------VACUUM IN CONE-------------------------------------------------------------------
TGeoCone* vacuum_conus = new TGeoCone("vacuum_conus", conus_lenght, 0, rmin1, 0, rmin2);
TGeoVolume* vacuum_conus_volume = new TGeoVolume("vacuum_conus_volume", vacuum_conus, Vacuum);
vacuum_conus_volume->SetLineColor(kGreen);
// CONNECTING TUBE--------------------------------------------------------------------------------------------------------------------------------------------------------
TGeoCtub* tube_connection = new TGeoCtub("tube_connection", 55. * mm, 56. * mm, 15. * mm, 0., 360., -0.05235892, 0., 4.99972585, 0., 0., 1.);
TGeoVolume* tube_connection_volume = new TGeoVolume("tube_connection_volume", tube_connection, CF);
TGeoCtub* tube_connection =
new TGeoCtub("tube_connection", 55. * mm, 56. * mm, 15. * mm, 0., 360., 0.05235892, 0.,
4.99972585, 0., 0., 1.);
TGeoVolume* tube_connection_volume =
new TGeoVolume("tube_connection_volume", tube_connection, CF);
tube_connection_volume->SetLineColor(kGray);
//------------------------VACUUM IN THE CONNECTING TUBE--------------------------------------------------------------
TGeoCtub* vacuum_tube_connection = new TGeoCtub("vacuum_tube_connection", 0. * mm, 55. * mm, 15. * mm, 0., 360., -0.05235892, 0., 4.99972585, 0., 0., 1.);
TGeoVolume* vacuum_tube_connection_volume = new TGeoVolume("vacuum_tube_connection_volume", vacuum_tube_connection, Vacuum);
vacuum_tube_connection_volume->SetLineColor(kGreen);
// STS tube-----------------------------------------------------------------------------------------------------
TGeoCtub* tube_connection_sts = new TGeoCtub("tube_connection_sts", 55. * mm, 56. * mm, 15. * mm, 0., 360., 0., 0., 1., 0.05235892, 0., 4.99972585);
TGeoVolume* tube_connection_sts_volume = new TGeoVolume("tube_connection_sts_volume", tube_connection_sts, CF);
TGeoCtub* tube_connection_sts =
new TGeoCtub("tube_connection_sts", 55. * mm, 56. * mm, 15. * mm, 0., 360., 0., 0., 1.,
-0.05235892, 0., 4.99972585);
TGeoVolume* tube_connection_sts_volume =
new TGeoVolume("tube_connection_sts_volume", tube_connection_sts, CF);
tube_connection_sts_volume->SetLineColor(kGray);
//-------------------------------BELLOW DEFINITION----------------------------------------------------------------
......@@ -583,40 +564,6 @@ void create_bpipe_geometry_v21g(const char* geoTag = "v21g")
TGeoVolume* bellow_5 = new TGeoVolume("bellow_s5", bellow_s5, Stainless);
bellow_5->SetLineColor(kRed);
//-------------------------------VACUUM BELLOW DEFINITION----------------------------------------------------------------
TGeoVolume* vacuum_bellow_flange_0 = new TGeoVolume("vacuum_bellow_flange_0", vacuum_flange_hole, Vacuum);
vacuum_bellow_flange_0->SetLineColor(kGreen);
TGeoCtub* vacuum_bellow_s1 = new TGeoCtub("vacuum_bellow_s1", 0 * mm, 122.5 * mm, 35 / 2 * mm, 0., 360.,
sin((90 - 89.091) * (pi / 180)), 0., -cos((90 - 89.091) * (pi / 180)),
sin((90 - 87.296) * (pi / 180)), 0., cos((90 - 87.296) * (pi / 180)));
TGeoVolume* vacuum_bellow_1 = new TGeoVolume("vacuum_bellow_s1", vacuum_bellow_s1, Vacuum);
vacuum_bellow_1->SetLineColor(kGreen);
TGeoCtub* vacuum_bellow_s2 = new TGeoCtub("vacuum_bellow_s1", 0 * mm, 122.5 * mm, 70 / 2 * mm, 0., 360.,
sin((90 - 87.296) * (pi / 180)), 0., -cos((90 - 87.296) * (pi / 180)),
sin((90 - 86.744) * (pi / 180)), 0., cos((90 - 86.744) * (pi / 180)));
TGeoVolume* vacuum_bellow_2 = new TGeoVolume("vacuum_bellow_s2", vacuum_bellow_s2, Vacuum);
vacuum_bellow_2->SetLineColor(kGreen);
TGeoCtub* vacuum_bellow_s3 =
new TGeoCtub("vacuum_bellow_s3", 0 * mm, 122.5 * mm, 83.124 / 2 * mm, 0., 360., sin((90 - 86.744) * (pi / 180)), 0.,
-cos((90 - 86.744) * (pi / 180)), sin((90 - 92.23) * (pi / 180)), 0., cos((90 - 92.23) * (pi / 180)));
TGeoVolume* vacuum_bellow_3 = new TGeoVolume("vacuum_bellow_s3", vacuum_bellow_s3, Vacuum);
vacuum_bellow_3->SetLineColor(kGreen);
TGeoCtub* vacuum_bellow_s4 =
new TGeoCtub("vacuum_bellow_s4", 0 * mm, 122.5 * mm, 70 / 2 * mm, 0., 360., sin((90 - 92.23) * (pi / 180)), 0.,
-cos((90 - 92.23) * (pi / 180)), sin((90 - 93.025) * (pi / 180)), 0., cos((90 - 93.025) * (pi / 180)));
TGeoVolume* vacuum_bellow_4 = new TGeoVolume("vacuum_bellow_s4", vacuum_bellow_s4, Vacuum);
vacuum_bellow_4->SetLineColor(kGreen);
TGeoCtub* vacuum_bellow_s5 = new TGeoCtub("vacuum_bellow_s5", 0 * mm, 122.5 * mm, 35 / 2 * mm, 0., 360.,
sin((90 - 93.025) * (pi / 180)), 0., -cos((90 - 93.025) * (pi / 180)),
sin((90 - 91.854) * (pi / 180)), 0., cos((90 - 91.854) * (pi / 180)));
TGeoVolume* vacuum_bellow_5 = new TGeoVolume("vacuum_bellow_s5", vacuum_bellow_s5, Vacuum);
vacuum_bellow_5->SetLineColor(kGreen);
TGeoBBox* roll_plate_s = new TGeoBBox("roll_plate_s", 75. * mm, 12.5 * mm, 90. * mm);
TGeoVolume* roll_plate = new TGeoVolume("roll_plate", roll_plate_s, Al);
......@@ -629,11 +576,6 @@ void create_bpipe_geometry_v21g(const char* geoTag = "v21g")
TGeoVolume* bellow_flange_1 = new TGeoVolume("bellow_flange_1", flange_cyl_composite, Stainless);
bellow_flange_1->SetLineColor(kRed);
//-------------------------------VACUUM FLANGE BELLOW------------------------------------------------------------------
TGeoTube* vacuum_flange_cyl_hole = new TGeoTube("vacuum_flange_cyl_hole", 0., 8.9, 1.5);
TGeoVolume* vacuum_bellow_flange_1 = new TGeoVolume("vacuum_bellow_flange_1", vacuum_flange_cyl_hole, Vacuum);
vacuum_bellow_flange_1->SetLineColor(kGreen);
TGeoTube* lead_screw_s = new TGeoTube("lead_screw_s", 0. * mm, 6. * mm, 205. * mm);
TGeoTube* nut_small_s = new TGeoTube("nut_small_s", 6. * mm, 14. * mm, 50. * mm);
......@@ -654,11 +596,6 @@ void create_bpipe_geometry_v21g(const char* geoTag = "v21g")
TGeoVolume* psd_tube = new TGeoVolume("psd_tube", psd_tube_s, CF);
psd_tube->SetLineColor(kGray);
//------------------------------VACUUM PSD TUBE-------------------------------------------------------------------------
TGeoTube* vacuum_psd_tube_s = new TGeoTube("vacuum_psd_tube_s", 0. * mm, 90. * mm, 7230. * mm);
TGeoVolume* vacuum_psd_tube = new TGeoVolume("vacuum_psd_tube", vacuum_psd_tube_s, Vacuum);
vacuum_psd_tube->SetLineColor(kGreen);
//------------------TOP plate------------------------------
bellow_ass->AddNode(sub_t_plate1, 1, tr_top_0a);
bellow_ass->AddNode(sub_t_plate2, 1, tr_top_1a);
......@@ -712,15 +649,6 @@ void create_bpipe_geometry_v21g(const char* geoTag = "v21g")
bellow_ass->AddNode(bellow_5, 1, ctr_s5);
bellow_ass->AddNode(bellow_flange_1, 1, ctr_s6);
//----------------Vacuum in bellow and flanges-----------------------------
vacuum_bellow_ass->AddNode(vacuum_bellow_flange_0, 1, new TGeoTranslation(0, 0, 1.5));
vacuum_bellow_ass->AddNode(vacuum_bellow_1, 1, ctr_s1);
vacuum_bellow_ass->AddNode(vacuum_bellow_2, 1, ctr_s2);
vacuum_bellow_ass->AddNode(vacuum_bellow_3, 1, ctr_s3);
vacuum_bellow_ass->AddNode(vacuum_bellow_4, 1, ctr_s4);
vacuum_bellow_ass->AddNode(vacuum_bellow_5, 1, ctr_s5);
vacuum_bellow_ass->AddNode(vacuum_bellow_flange_1, 1, ctr_s6);
//------------------DRIVE assembly--------------------------------------
bellow_ass->AddNode(roll_plate, 1, ctr_plate_up);
bellow_ass->AddNode(roll_plate, 2, ctr_plate_down);
......@@ -734,19 +662,10 @@ void create_bpipe_geometry_v21g(const char* geoTag = "v21g")
conical_beam_pipe->AddNode(tube_connection_volume, 1, ctr_sts_conus_connection);
//conical_beam_pipe->AddNode(tube_connection_sts_volume, 1, ctr_sts_tube); //unexplained "nonexisting" overlap
//-------------------VACUUM in CONICAL section--------------------------------------------------
//vacuum_conical_beam_pipe->AddNode(vacuum_downstream_flange, 1, new TGeoTranslation(0, 0, 1570 * mm)); // not needed
vacuum_conical_beam_pipe->AddNode(vacuum_conus_volume, 1, new TGeoTranslation(0, 0, 0));
vacuum_conical_beam_pipe->AddNode(vacuum_tube_connection_volume, 1, ctr_sts_conus_connection);
//------------------INSERT into top volume
full_assembly->AddNode(conical_beam_pipe, 1, origin_combi_cone);
full_assembly->AddNode(bellow_ass, 1, origin_combi);
full_assembly->AddNode(psd_tube, 1, ctr_psd_tube);
full_assembly->AddNode(vacuum_conical_beam_pipe, 1, origin_combi_cone);
full_assembly->AddNode(vacuum_bellow_ass, 1, origin_combi);
full_assembly->AddNode(vacuum_psd_tube, 1, ctr_psd_tube);
//beampipe->AddNode(full_assembly,1, new TGeoTranslation(0, 0, 0*mm));
// --- close the geometry
......@@ -771,6 +690,6 @@ void create_bpipe_geometry_v21g(const char* geoTag = "v21g")
binfile->Close();
//--- close the geometry
geom->CloseGeometry();
//gGeoManager->CheckOverlaps(0.000001);
//gGeoManager->CheckOverlaps(0.0001);
//gGeoManager->GetListOfOverlaps()->Print();
}
......@@ -279,24 +279,17 @@ void create_bpipe_geometry_v21h(const char* geoTag = "v21h")
Double_t worldx = 800 * mm;
Double_t worldy = 220 * mm;
Double_t worldz = 18100 * mm;
//TGeoVolume* full_assembly = geom->MakeBox("pipe_v21g", Vacuum, worldx, worldy, worldz);
TGeoVolumeAssembly* full_assembly = new TGeoVolumeAssembly("pipe_v21g");
//TGeoVolume* full_assembly = geom->MakeBox("pipe_v21h", Vacuum, worldx, worldy, worldz);
TGeoVolumeAssembly* full_assembly = new TGeoVolumeAssembly("pipe_v21h");
geom->SetTopVolume(full_assembly);
full_assembly->SetVisibility(kTRUE);
//TGeoVolume* conical_beam_pipe = geom->MakeBox("conical_beam_pipe", Vacuum, 220 * mm, 220 * mm, 1825 * mm);
TGeoVolume* conical_beam_pipe = new TGeoVolumeAssembly("conical_beam_pipe");
conical_beam_pipe->SetVisibility(kFALSE);
TGeoVolume* vacuum_conical_beam_pipe = new TGeoVolumeAssembly("vacuum_conical_beam_pipe");
vacuum_conical_beam_pipe->SetVisibility(kFALSE);
//TGeoVolume* bellow_ass = geom->MakeBox("Bellow assembly", Vacuum, 350 * mm, 220 * mm, 600 * mm);
TGeoVolume* bellow_ass = new TGeoVolumeAssembly("Bellow assembly");
bellow_ass->SetVisibility(kFALSE);
TGeoVolume* vacuum_bellow_ass = new TGeoVolumeAssembly("Vacuum_bellow assembly");
vacuum_bellow_ass->SetVisibility(kFALSE);
// TOP PLATE--------------------------------------------------------------------------------------
TGeoVolume* sub_t_plate1 = geom->MakeArb8("sub_t_plate1", CF, top_plate_cord[2]);
sub_t_plate1->SetLineColor(kGray);
......@@ -506,46 +499,34 @@ void create_bpipe_geometry_v21h(const char* geoTag = "v21h")
r_arb1->SetVertex(7, rail_cord[3], rail_cord[1] + rail_cord[4]);