PartProduce Class Reference

#include <PartProduce.hh>

List of all members.

Public Member Functions

 PartProduce ()
 ~PartProduce ()
void IniParam ()
G4VSolid * sd_containerOut (double smallL=0, string name="")
G4VSolid * sd_containerIn (double smallL=0, string name="")
G4LogicalVolume * lg_containerFrame (string name="")
G4VSolid * sd_upCover (double smallL=0, string name="")
G4VSolid * sd_lowCover1 (double smallL=0, string name="")
G4VSolid * sd_lowCover2 (double smallL=0, string name="")
G4LogicalVolume * lg_upCover (string name="")
G4LogicalVolume * lg_lowCover1 (string name="")
G4LogicalVolume * lg_lowCover2 (string name="")
G4VSolid * sd_upFEE (double smallL=0, string name="")
G4LogicalVolume * lg_upFEE_pcb (string name="")
G4LogicalVolume * lg_upFEE (string name="")
G4VSolid * sd_sideFEE (double smallL=0, string name="")
G4LogicalVolume * lg_sideFEE_pcb (string name="")
G4LogicalVolume * lg_sideFEE (string name="")
G4VSolid * sd_castingDie_outline (double smallL=0, string name="")
G4LogicalVolume * lg_castingDie (string name="")
G4LogicalVolume * lg_container (int flag, string name="")
G4LogicalVolume * lg_gasContainer (string name="")
G4LogicalVolume * lg_bareChamber (string name="")
G4LogicalVolume * lg_honeyComb (string name="")
G4LogicalVolume * lg_tape_mrpc (string name="")
G4LogicalVolume * lg_pcbBoard (G4int flag, string name="")
G4AssemblyVolume * lg_strip (string name="")
G4LogicalVolume * lg_mylar (string name="")
G4LogicalVolume * lg_glass (G4int flag, string name="")
G4LogicalVolume * lg_gasLayer (string name="")
G4LogicalVolume * lg_bracket (string name="")
G4LogicalVolume * lg_upStopBlock (string name="")
G4LogicalVolume * lg_sideStopBlock (string name="")

Private Attributes

BesTofGeoParametertofPara
G4double containerOut_xdown
G4double containerOut_xup
G4double containerOut_y
G4double containerOut_z
G4double container_thickness
G4double container_lowBorder
G4double containerIn_xdown
G4double containerIn_xup
G4double containerIn_y
G4double containerIn_z
G4double upCover_xdown
G4double upCover_xup
G4double upCover_y
G4double upCover_z
G4double upCover_posz
G4double lowCover1_xdown
G4double lowCover1_xup
G4double lowCover1_y
G4double lowCover1_z
G4double lowCover1_addx
G4double lowCover1_addz
G4double lowCover1_posz
G4double lowCover2_xdown
G4double lowCover2_xup
G4double lowCover2_y
G4double lowCover2_z
G4double lowCover2_posz
G4double upFEE_xdown
G4double upFEE_xup
G4double upFEE_y
G4double upFEE_z
G4double FEE_thickness
G4double upFEE_posz
G4double upFEE_pcb_xdown
G4double upFEE_pcb_xup
G4double upFEE_pcb_y
G4double upFEE_pcb_z
G4double sideFEE_x
G4double sideFEE_y
G4double sideFEE_z
G4double sideFEE_posl
G4double sideFEE_pcb_x
G4double sideFEE_pcb_y
G4double sideFEE_pcb_z
G4double castingDie_x
G4double castingDie_y
G4double castingDie_z
G4double castingDie_addr
G4double castingDie_subtractx
G4double castingDie_subtract_posz
G4double castingDie_posz1
G4double castingDie_posz2
G4double chamber_in_posy
G4double chamber_out_posy
G4double bracket_x
G4double bracket_y
G4double bracket_z
G4double bracket_r
G4double bracket_posx
G4double upStopBlock_x
G4double upStopBlock_y
G4double upStopBlock_z
G4double upStopBlock_subtractr
G4double upStopBlock_subtractposz
G4double sideStopBlock_x
G4double sideStopBlock_y
G4double sideStopBlock_z
G4double sideStopBlock_thickness
G4double sideStopBlock_posz0
G4double sideStopBlock_posz1
G4double honeyComb_xdown
G4double honeyComb_xup
G4double honeyComb_y
G4double honeyComb_z
G4double honeyComb_surface_y
G4double honeyComb_posz
G4double tape_mrpc_xdown
G4double tape_mrpc_xup
G4double tape_mrpc_y
G4double tape_mrpc_z
G4double tape_mrpc_posz
G4double pcbBoard_xdown
G4double pcbBoard_xup
G4double pcbBoard_y0
G4double pcbBoard_y1
G4double pcbBoard_z
G4double strip_x [12]
G4double strip_y
G4double strip_z
G4double strip_gap
G4double strip_posz
G4double mylar_xdown
G4double mylar_xup
G4double mylar_y
G4double mylar_z
G4double mylar_posz
G4double glass0_xdown
G4double glass0_xup
G4double glass0_y
G4double glass0_z
G4double glass0_posz
G4double glass1_xdown
G4double glass1_xup
G4double glass1_y
G4double glass1_z
G4double glass1_posz
G4double gasLayer_xdown
G4double gasLayer_xup
G4double gasLayer_y
G4double gasLayer_z
G4double gasLayer_posz
G4double endcap_r
G4double endcap_length
G4double layer_posz
G4double startAngle_east
G4double startAngle_west


Detailed Description

Definition at line 11 of file PartProduce.hh.


Constructor & Destructor Documentation

PartProduce::PartProduce (  ) 

Definition at line 25 of file PartProduce.cc.

References IniParam().

00026 {       
00027     IniParam();
00028 }

PartProduce::~PartProduce (  ) 

Definition at line 30 of file PartProduce.cc.

00031 {
00032 }


Member Function Documentation

void PartProduce::IniParam (  ) 

Definition at line 34 of file PartProduce.cc.

References bracket_posx, bracket_r, bracket_x, bracket_y, bracket_z, castingDie_addr, castingDie_posz1, castingDie_posz2, castingDie_subtract_posz, castingDie_subtractx, castingDie_x, castingDie_y, castingDie_z, chamber_in_posy, chamber_out_posy, container_lowBorder, container_thickness, containerIn_xdown, containerIn_xup, containerIn_y, containerIn_z, containerOut_xdown, containerOut_xup, containerOut_y, containerOut_z, endcap_length, endcap_r, FEE_thickness, gasLayer_posz, gasLayer_xdown, gasLayer_xup, gasLayer_y, gasLayer_z, BesTofGeoParameter::Get(), BesTofGeoParameter::GetInstance(), glass0_posz, glass0_xdown, glass0_xup, glass0_y, glass0_z, glass1_posz, glass1_xdown, glass1_xup, glass1_y, glass1_z, honeyComb_posz, honeyComb_surface_y, honeyComb_xdown, honeyComb_xup, honeyComb_y, honeyComb_z, layer_posz, lowCover1_addx, lowCover1_addz, lowCover1_posz, lowCover1_xdown, lowCover1_xup, lowCover1_y, lowCover1_z, lowCover2_posz, lowCover2_xdown, lowCover2_xup, lowCover2_y, lowCover2_z, mylar_posz, mylar_xdown, mylar_xup, mylar_y, mylar_z, pcbBoard_xdown, pcbBoard_xup, pcbBoard_y0, pcbBoard_y1, pcbBoard_z, sideFEE_pcb_x, sideFEE_pcb_y, sideFEE_pcb_z, sideFEE_posl, sideFEE_x, sideFEE_y, sideFEE_z, sideStopBlock_posz0, sideStopBlock_posz1, sideStopBlock_thickness, sideStopBlock_x, sideStopBlock_y, sideStopBlock_z, startAngle_east, startAngle_west, strip_gap, strip_posz, strip_x, strip_y, strip_z, tape_mrpc_posz, tape_mrpc_xdown, tape_mrpc_xup, tape_mrpc_y, tape_mrpc_z, tofPara, upCover_posz, upCover_xdown, upCover_xup, upCover_y, upCover_z, upFEE_pcb_xdown, upFEE_pcb_xup, upFEE_pcb_y, upFEE_pcb_z, upFEE_posz, upFEE_xdown, upFEE_xup, upFEE_y, upFEE_z, upStopBlock_subtractposz, upStopBlock_subtractr, upStopBlock_x, upStopBlock_y, and upStopBlock_z.

Referenced by BesTofConstruction::ConstructEcTof_mrpc(), and PartProduce().

00035 {
00036     tofPara = BesTofGeoParameter::GetInstance();
00037 
00038     //All the values are in units of mm or deg
00039     containerOut_xdown = tofPara->Get("containerOut_xdown");
00040     containerOut_xup = tofPara->Get("containerOut_xup");
00041     containerOut_y = tofPara->Get("containerOut_y");
00042     containerOut_z = tofPara->Get("containerOut_z");
00043     container_thickness = tofPara->Get("container_thickness");
00044     container_lowBorder = tofPara->Get("container_lowBorder");
00045 
00046     containerIn_xdown = tofPara->Get("containerIn_xdown");
00047     containerIn_xup = tofPara->Get("containerIn_xup");
00048     containerIn_y = tofPara->Get("containerIn_y");
00049     containerIn_z = tofPara->Get("containerIn_z");
00050 
00051     upCover_xdown = tofPara->Get("upCover_xdown");
00052     upCover_xup = tofPara->Get("upCover_xup");
00053     upCover_y = tofPara->Get("upCover_y");
00054     upCover_z = tofPara->Get("upCover_z");
00055     upCover_posz = tofPara->Get("upCover_posz");
00056 
00057     lowCover1_xdown = tofPara->Get("lowCover1_xdown");
00058     lowCover1_xup = tofPara->Get("lowCover1_xup");
00059     lowCover1_y = tofPara->Get("lowCover1_y");
00060     lowCover1_z = tofPara->Get("lowCover1_z");
00061     lowCover1_addx = tofPara->Get("lowCover1_addx");
00062     lowCover1_addz = tofPara->Get("lowCover1_addz");
00063     lowCover1_posz = tofPara->Get("lowCover1_posz");
00064 
00065     lowCover2_xdown = tofPara->Get("lowCover2_xdown");
00066     lowCover2_xup = tofPara->Get("lowCover2_xup");
00067     lowCover2_y = tofPara->Get("lowCover2_y");
00068     lowCover2_z = tofPara->Get("lowCover2_z");
00069     lowCover2_posz = tofPara->Get("lowCover2_posz");
00070 
00071     upFEE_xdown = tofPara->Get("upFEE_xdown");
00072     upFEE_xup = tofPara->Get("upFEE_xup");
00073     upFEE_y = tofPara->Get("upFEE_y");
00074     upFEE_z = tofPara->Get("upFEE_z");
00075     FEE_thickness = tofPara->Get("FEE_thickness");
00076     upFEE_posz = tofPara->Get("upFEE_posz");
00077 
00078     upFEE_pcb_xdown = tofPara->Get("upFEE_pcb_xdown");
00079     upFEE_pcb_xup = tofPara->Get("upFEE_pcb_xup");
00080     upFEE_pcb_y = tofPara->Get("upFEE_pcb_y");
00081     upFEE_pcb_z = tofPara->Get("upFEE_pcb_z");
00082 
00083     sideFEE_x = tofPara->Get("sideFEE_x");
00084     sideFEE_y = tofPara->Get("sideFEE_y");
00085     sideFEE_z = tofPara->Get("sideFEE_z");
00086     sideFEE_posl = tofPara->Get("sideFEE_posl");
00087 
00088     sideFEE_pcb_x = tofPara->Get("sideFEE_pcb_x");
00089     sideFEE_pcb_y = tofPara->Get("sideFEE_pcb_y");
00090     sideFEE_pcb_z = tofPara->Get("sideFEE_pcb_z");
00091 
00092     castingDie_x = tofPara->Get("castingDie_x");
00093     castingDie_y = tofPara->Get("castingDie_y");
00094     castingDie_z = tofPara->Get("castingDie_z");
00095     castingDie_addr = tofPara->Get("castingDie_addr");
00096     castingDie_subtractx = tofPara->Get("castingDie_subtractx");
00097     castingDie_subtract_posz = tofPara->Get("castingDie_subtract_posz");
00098     castingDie_posz1 = tofPara->Get("castingDie_posz1");
00099     castingDie_posz2 = tofPara->Get("castingDie_posz2");
00100 
00101     chamber_in_posy = tofPara->Get("chamber_in_posy");
00102     chamber_out_posy = tofPara->Get("chamber_out_posy");
00103 
00104     bracket_x = tofPara->Get("bracket_x");
00105     bracket_y = tofPara->Get("bracket_y");
00106     bracket_z = tofPara->Get("bracket_z");
00107     bracket_r = tofPara->Get("bracket_r");
00108     bracket_posx = tofPara->Get("bracket_posx");
00109 
00110     upStopBlock_x = tofPara->Get("upStopBlock_x");
00111     upStopBlock_y = tofPara->Get("upStopBlock_y");
00112     upStopBlock_z = tofPara->Get("upStopBlock_z");
00113     upStopBlock_subtractr = tofPara->Get("upStopBlock_subtractr");
00114     upStopBlock_subtractposz = tofPara->Get("upStopBlock_subtractposz");
00115 
00116     sideStopBlock_x = tofPara->Get("sideStopBlock_x");
00117     sideStopBlock_y = tofPara->Get("sideStopBlock_y");
00118     sideStopBlock_z = tofPara->Get("sideStopBlock_z");
00119     sideStopBlock_thickness = tofPara->Get("sideStopBlock_thickness");
00120     sideStopBlock_posz0 = tofPara->Get("sideStopBlock_posz0");
00121     sideStopBlock_posz1 = tofPara->Get("sideStopBlock_posz1");
00122 
00123 
00124     honeyComb_xdown = tofPara->Get("honeyComb_xdown");
00125     honeyComb_xup = tofPara->Get("honeyComb_xup");
00126     honeyComb_y = tofPara->Get("honeyComb_y");
00127     honeyComb_z = tofPara->Get("honeyComb_z");
00128     honeyComb_surface_y = tofPara->Get("honeyComb_surface_y");
00129     honeyComb_posz = tofPara->Get("honeyComb_posz");
00130 
00131     tape_mrpc_xdown = tofPara->Get("tape_mrpc_xdown");
00132     tape_mrpc_xup = tofPara->Get("tape_mrpc_xup");
00133     tape_mrpc_y = tofPara->Get("tape_mrpc_y");
00134     tape_mrpc_z = tofPara->Get("tape_mrpc_z");
00135     tape_mrpc_posz = tofPara->Get("tape_mrpc_posz");
00136 
00137     pcbBoard_xdown = tofPara->Get("pcbBoard_xdown");
00138     pcbBoard_xup = tofPara->Get("pcbBoard_xup");
00139     pcbBoard_y0 = tofPara->Get("pcbBoard_y0");
00140     pcbBoard_y1 = tofPara->Get("pcbBoard_y1");
00141     pcbBoard_z = tofPara->Get("pcbBoard_z");
00142 
00143     strip_x[0] = tofPara->Get("strip_x[0]");
00144     strip_x[1] = tofPara->Get("strip_x[1]");
00145     strip_x[2] = tofPara->Get("strip_x[2]");
00146     strip_x[3] = tofPara->Get("strip_x[3]");
00147     strip_x[4] = tofPara->Get("strip_x[4]");
00148     strip_x[5] = tofPara->Get("strip_x[5]");
00149     strip_x[6] = tofPara->Get("strip_x[6]");
00150     strip_x[7] = tofPara->Get("strip_x[7]");
00151     strip_x[8] = tofPara->Get("strip_x[8]");
00152     strip_x[9] = tofPara->Get("strip_x[9]");
00153     strip_x[10] = tofPara->Get("strip_x[10]");
00154     strip_x[11] = tofPara->Get("strip_x[11]");
00155     strip_y = tofPara->Get("strip_y");
00156     strip_z = tofPara->Get("strip_z");
00157     strip_gap = tofPara->Get("strip_gap");
00158     strip_posz = tofPara->Get("strip_posz");
00159 
00160     mylar_xdown = tofPara->Get("mylar_xdown");
00161     mylar_xup = tofPara->Get("mylar_xup");
00162     mylar_y = tofPara->Get("mylar_y");
00163     mylar_z = tofPara->Get("mylar_z");
00164     mylar_posz = tofPara->Get("mylar_posz");
00165 
00166     glass0_xdown = tofPara->Get("glass0_xdown");
00167     glass0_xup = tofPara->Get("glass0_xup");
00168     glass0_y = tofPara->Get("glass0_y");
00169     glass0_z = tofPara->Get("glass0_z");
00170     glass0_posz = tofPara->Get("glass0_posz");
00171 
00172     glass1_xdown = tofPara->Get("glass1_xdown");
00173     glass1_xup = tofPara->Get("glass1_xup");
00174     glass1_y = tofPara->Get("glass1_y");
00175     glass1_z = tofPara->Get("glass1_z");
00176     glass1_posz = tofPara->Get("glass1_posz");
00177 
00178     gasLayer_xdown = tofPara->Get("gasLayer_xdown");
00179     gasLayer_xup = tofPara->Get("gasLayer_xup");
00180     gasLayer_y = tofPara->Get("gasLayer_y");
00181     gasLayer_z = tofPara->Get("gasLayer_z");
00182     gasLayer_posz = tofPara->Get("gasLayer_posz");
00183 
00184     endcap_r = tofPara->Get("endcap_r");
00185     endcap_length = tofPara->Get("endcap_length");
00186     layer_posz = tofPara->Get("layer_posz");
00187     startAngle_east = tofPara->Get("startAngle_east");
00188     startAngle_west = tofPara->Get("startAngle_west");
00189 }

G4LogicalVolume * PartProduce::lg_bareChamber ( string  name = ""  ) 

Definition at line 605 of file PartProduce.cc.

References gasLayer_y, glass0_y, glass1_y, honeyComb_y, mylar_y, Name, pcbBoard_xdown, pcbBoard_xup, pcbBoard_y0, pcbBoard_y1, pcbBoard_z, smallL, tape_mrpc_y, and xup.

Referenced by BesTofConstruction::ConstructEcTof_mrpc().

00606 {
00607     //A trapezoid to contain the bare chamber
00608     double xdown = pcbBoard_xdown;
00609     double xup = pcbBoard_xup;
00610     double y = honeyComb_y*2+tape_mrpc_y*2+pcbBoard_y0*2+pcbBoard_y1+mylar_y*4+glass0_y*4+glass1_y*10+gasLayer_y*12;
00611     double z = pcbBoard_z;
00612     Name.str("");
00613     Name<<"solid_bareChamber_"<<name;
00614     G4Trd* solid_bareChamber = new G4Trd(Name.str(), xdown/2.+smallL, xup/2.+smallL, y/2.+smallL, y/2.+smallL, z/2.+smallL);
00615     G4LogicalVolume* logical_bareChamber = new G4LogicalVolume(solid_bareChamber, G4Material::GetMaterial("MRPCGas"), name);
00616 
00617     G4VisAttributes* vis = new G4VisAttributes();
00618     //vis->SetColor(G4Color(0.3, 0.3, 0.3));
00619     vis->SetVisibility(0);
00620     //vis->SetForceWireframe(true);
00621     logical_bareChamber->SetVisAttributes(vis);
00622 
00623     return logical_bareChamber;
00624 }

G4LogicalVolume * PartProduce::lg_bracket ( string  name = ""  ) 

Definition at line 796 of file PartProduce.cc.

References bracket_r, bracket_x, bracket_y, bracket_z, Name, and rot_dummy().

Referenced by BesTofConstruction::ConstructEcTof_mrpc().

00797 {
00798     Name.str("");
00799     Name<<"solid_bracket_"<<name<<"_1";
00800     G4Tubs* solid_bracket_1 = new G4Tubs(Name.str(), 0, bracket_r, bracket_z/2, 0*degree, 360*degree);
00801 
00802     Name.str("");
00803     Name<<"solid_bracket_"<<name<<"_2";
00804     G4Trd* solid_bracket_2 = new G4Trd(Name.str(), bracket_x/2, bracket_x/2, bracket_x/2, bracket_x/2, bracket_y/2);
00805 
00806     G4Transform3D transform_bracket(rot_dummy, G4ThreeVector(0, 0, (bracket_y+bracket_z)/2));
00807     Name.str("");
00808     Name<<"solid_bracket_"<<name;
00809     G4UnionSolid* solid_bracket = new G4UnionSolid(Name.str(), solid_bracket_1, solid_bracket_2, transform_bracket);
00810     G4LogicalVolume* logical_bracket = new G4LogicalVolume(solid_bracket, G4Material::GetMaterial("Nylon"), name);
00811 
00812     G4VisAttributes* vis = new G4VisAttributes();
00813     vis->SetColor(G4Color(0.3, 0.3, 0.3));
00814     //vis->SetForceSolid(true); 
00815     logical_bracket->SetVisAttributes(vis);
00816 
00817     return logical_bracket;
00818 }

G4LogicalVolume * PartProduce::lg_castingDie ( string  name = ""  ) 

Definition at line 460 of file PartProduce.cc.

References castingDie_subtract_posz, castingDie_subtractx, castingDie_y, castingDie_z, Name, rot_dummy(), and sd_castingDie_outline().

Referenced by BesTofConstruction::ConstructEcTof_mrpc().

00461 {
00462     Name.str("");
00463     Name<<"solid_castingDie_outline_"<<name;
00464     G4VSolid* solid_castingDie_outline = sd_castingDie_outline(0, Name.str());
00465 
00466     Name.str("");
00467     Name<<"solid_castingDie_subtract_"<<name;
00468     G4Trd* solid_castingDie_subtract = new G4Trd(Name.str(), castingDie_subtractx/2, castingDie_subtractx/2, castingDie_y, castingDie_y, castingDie_z/2);
00469 
00470     G4Transform3D transform_castingDie(rot_dummy, G4ThreeVector(0,0,-1*castingDie_subtract_posz));
00471     Name.str("");
00472     Name<<"solid_castingDie_"<<name;
00473     G4SubtractionSolid* solid_castingDie = new G4SubtractionSolid(Name.str(), solid_castingDie_outline, solid_castingDie_subtract, transform_castingDie);
00474     G4LogicalVolume* logical_castingDie = new G4LogicalVolume(solid_castingDie, G4Material::GetMaterial("Aluminium"), name);
00475 
00476     G4VisAttributes* vis = new G4VisAttributes();
00477     vis->SetColor(G4Color(0.2,0.,1));
00478     //vis->SetForceSolid(true);
00479     //vis->SetForceWireframe(true);     
00480     logical_castingDie->SetVisAttributes(vis);
00481 
00482     return logical_castingDie;
00483 }

G4LogicalVolume * PartProduce::lg_container ( int  flag,
string  name = "" 
)

Definition at line 485 of file PartProduce.cc.

References castingDie_posz1, castingDie_posz2, castingDie_z, containerOut_xdown, containerOut_xup, containerOut_y, containerOut_z, cos(), lowCover1_posz, lowCover1_z, lowCover2_posz, lowCover2_z, Name, rad, rot_dummy(), sd_castingDie_outline(), sd_containerOut(), sd_lowCover1(), sd_lowCover2(), sd_sideFEE(), sd_upCover(), sd_upFEE(), sideFEE_posl, sideFEE_x, sin(), smallL, upCover_posz, upCover_y, upCover_z, upFEE_posz, upFEE_y, and upFEE_z.

Referenced by BesTofConstruction::ConstructEcTof_mrpc().

00486 {
00487     Name.str("");
00488     Name<<"solid_containerOut_"<<name;
00489     G4VSolid* solid_containerOut = sd_containerOut(smallL, Name.str());
00490 
00491     //add top cover
00492     Name.str("");
00493     Name<<"solid_upCover_"<<name;
00494     G4VSolid* solid_upCover = sd_upCover(smallL, Name.str());
00495     G4ThreeVector translation_upCover(0, (containerOut_y+upCover_y)/2, (upCover_z-containerOut_z)/2-upCover_posz);
00496     G4Transform3D transform_upCover(rot_dummy, translation_upCover);
00497     Name.str("");
00498     Name<<"solid_container_"<<name<<"_1";
00499     G4UnionSolid* solid_container_1 = new G4UnionSolid(Name.str(), solid_containerOut, solid_upCover, transform_upCover);
00500 
00501     //add FEE on the top cover
00502     Name.str("");
00503     Name<<"solid_upFEE_"<<name;
00504     G4VSolid* solid_upFEE = sd_upFEE(smallL, Name.str());
00505     G4ThreeVector translation_upFEE(0, containerOut_y/2+upCover_y+upFEE_y/2, upCover_z-upFEE_posz-upFEE_z/2-upCover_posz-containerOut_z/2);
00506     G4Transform3D transform_upFEE(rot_dummy, translation_upFEE);
00507     Name.str("");
00508     Name<<"solid_container_"<<name<<"_2";
00509     G4UnionSolid* solid_container_2 = new G4UnionSolid(Name.str(), solid_container_1, solid_upFEE, transform_upFEE);
00510 
00511     //add FEE at the side
00512     Name.str("");
00513     Name<<"solid_sideFEE_"<<name;
00514     G4VSolid* solid_sideFEE = sd_sideFEE(smallL, Name.str());
00515 
00516     double angle_containerFrameSide = atan((containerOut_xup-containerOut_xdown)/2/containerOut_z) *rad;
00517     double l_containerFrameSide = containerOut_z/cos(angle_containerFrameSide);
00518     double x_sideFEE = (l_containerFrameSide/2-sideFEE_posl)*sin(angle_containerFrameSide)+(containerOut_xup+containerOut_xdown)/4+sideFEE_x/2*cos(angle_containerFrameSide);
00519     double z_sideFEE = (l_containerFrameSide/2-sideFEE_posl)*cos(angle_containerFrameSide)-sideFEE_x/2*sin(angle_containerFrameSide);
00520     G4ThreeVector translation_sideFEE_left(-x_sideFEE, 0, z_sideFEE);
00521     G4RotationMatrix rot_sideFEE_left;
00522     rot_sideFEE_left.rotateY(-angle_containerFrameSide);
00523     G4Transform3D transform_sideFEE_left(rot_sideFEE_left, translation_sideFEE_left);
00524     Name.str("");
00525     Name<<"solid_container_"<<name<<"_3"; 
00526     G4UnionSolid* solid_container_3 = new G4UnionSolid(Name.str(), solid_container_2, solid_sideFEE, transform_sideFEE_left);
00527 
00528     G4ThreeVector translation_sideFEE_right(x_sideFEE, 0, z_sideFEE);
00529     G4RotationMatrix rot_sideFEE_right;
00530     rot_sideFEE_right.rotateY(angle_containerFrameSide);
00531     G4Transform3D transform_sideFEE_right(rot_sideFEE_right, translation_sideFEE_right);
00532     Name.str("");
00533     Name<<"solid_container_"<<name<<"_4";
00534     G4UnionSolid* solid_container_4 = new G4UnionSolid(Name.str(), solid_container_3, solid_sideFEE, transform_sideFEE_right);
00535 
00536     //add casting die
00537     Name.str("");
00538     Name<<"solid_castingDie_"<<name;
00539     G4VSolid* solid_castingDie = sd_castingDie_outline(smallL, Name.str());
00540 
00541     G4RotationMatrix rot_castingDie;
00542     rot_castingDie.rotateX(90*deg);
00543     G4ThreeVector translation_castingDie_1(0, containerOut_y/2+upCover_y+castingDie_z/2, -containerOut_z/2+upCover_posz+castingDie_posz1);
00544     G4Transform3D transform_castingDie_1(rot_castingDie, translation_castingDie_1);
00545     Name.str("");
00546     Name<<"solid_container_"<<name<<"_5";
00547     G4UnionSolid* solid_container_5 = new G4UnionSolid(Name.str(), solid_container_4, solid_castingDie, transform_castingDie_1);
00548 
00549     G4ThreeVector translation_castingDie_2(0, containerOut_y/2+upCover_y+castingDie_z/2, -containerOut_z/2+upCover_posz+castingDie_posz2);
00550     G4Transform3D transform_castingDie_2(rot_castingDie, translation_castingDie_2);
00551     Name.str("");
00552     Name<<"solid_container_"<<name<<"_6";
00553     G4UnionSolid* solid_container_6 = new G4UnionSolid(Name.str(), solid_container_5, solid_castingDie, transform_castingDie_2);
00554 
00555     //add bottom cover
00556     G4VSolid* solid_lowCover;
00557     Name.str("");
00558     Name<<"solid_lowCover_"<<name;
00559     double z_lowCover;
00560     if(flag==0)
00561     {
00562         z_lowCover = (lowCover1_z-containerOut_z)/2-lowCover1_posz;
00563         solid_lowCover = sd_lowCover1(smallL, Name.str());
00564     }
00565     else if(flag==1)
00566     {
00567         z_lowCover = (lowCover2_z-containerOut_z)/2-lowCover2_posz;
00568         solid_lowCover = sd_lowCover2(smallL, Name.str());
00569     }
00570     else G4cout<<"!!!!!!!! Wrong lower Board !!!!!!!!!"<<G4endl;
00571 
00572     G4ThreeVector translation_lowCover(0, -1*(containerOut_y+upCover_y)/2, z_lowCover);
00573     G4Transform3D transform_lowCover(rot_dummy, translation_lowCover);
00574     Name.str("");
00575     Name<<"solid_container_"<<name;
00576     G4UnionSolid* solid_container = new G4UnionSolid(Name.str(), solid_container_6, solid_lowCover, transform_lowCover);
00577     G4LogicalVolume* logical_container = new G4LogicalVolume(solid_container, G4Material::GetMaterial("Air"), name);
00578 
00579     G4VisAttributes* vis = new G4VisAttributes();
00580     vis->SetColor(G4Color(0.5,0.5,0.6));
00581     vis->SetForceWireframe(true);     
00582     logical_container->SetVisAttributes(vis);
00583     //logical_container->SetVisAttributes(G4VisAttributes::Invisible);
00584 
00585     return logical_container;
00586 }

G4LogicalVolume * PartProduce::lg_containerFrame ( string  name = ""  ) 

Definition at line 204 of file PartProduce.cc.

References container_lowBorder, container_thickness, Name, rot_dummy(), sd_containerIn(), sd_containerOut(), and smallL.

Referenced by BesTofConstruction::ConstructEcTof_mrpc().

00205 {
00206     Name.str("");
00207     Name<<"solid_containerOut_"<<name;
00208     G4VSolid* solid_containerOut = sd_containerOut(0, Name.str());
00209     Name.str("");
00210     Name<<"solid_containerIn_"<<name;
00211     G4VSolid* solid_containerIn = sd_containerIn(smallL, Name.str());
00212 
00213     double lz = (container_lowBorder-container_thickness)/2;
00214     G4ThreeVector translation_containerFrame(0,0,lz);
00215     G4Transform3D transform_containerFrame(rot_dummy, translation_containerFrame);
00216     Name.str("");
00217     Name<<"solid_containerFrame_"<<name;
00218     G4SubtractionSolid* solid_containerFrame = new G4SubtractionSolid(Name.str(), solid_containerOut, solid_containerIn, transform_containerFrame);
00219     G4LogicalVolume* logical_containerFrame = new G4LogicalVolume(solid_containerFrame, G4Material::GetMaterial("Aluminium"), name);
00220 
00221     G4VisAttributes* vis = new G4VisAttributes();
00222     vis->SetColor(G4Color(0.5,0.5,0.6));
00223     logical_containerFrame->SetVisAttributes(vis);
00224 
00225     return logical_containerFrame;
00226 }

G4LogicalVolume * PartProduce::lg_gasContainer ( string  name = ""  ) 

Definition at line 589 of file PartProduce.cc.

References Name, and sd_containerIn().

Referenced by BesTofConstruction::ConstructEcTof_mrpc().

00590 {
00591     Name.str("");
00592     Name<<"solid_gasContainer_"<<name;
00593     G4VSolid* solid_gasContainer = sd_containerIn(0, Name.str());
00594     G4LogicalVolume* logical_gasContainer = new G4LogicalVolume(solid_gasContainer, G4Material::GetMaterial("MRPCGas"), name);
00595 
00596     G4VisAttributes* vis = new G4VisAttributes();
00597     //vis->SetVisibility(0);
00598     vis->SetForceWireframe(true);
00599     logical_gasContainer->SetVisAttributes(vis);
00600 
00601     return logical_gasContainer;
00602 }

G4LogicalVolume * PartProduce::lg_gasLayer ( string  name = ""  ) 

Definition at line 781 of file PartProduce.cc.

References gasLayer_xdown, gasLayer_xup, gasLayer_y, gasLayer_z, and Name.

Referenced by BesTofConstruction::ConstructEcTof_mrpc().

00782 {
00783     Name.str("");
00784     Name<<"solid_gasLayer_"<<name;
00785     G4Trd* solid_gasLayer = new G4Trd(Name.str(),gasLayer_xdown/2.,gasLayer_xup/2.,gasLayer_y/2.,gasLayer_y/2.,gasLayer_z/2.);
00786     G4LogicalVolume* logical_gasLayer = new G4LogicalVolume(solid_gasLayer,G4Material::GetMaterial("MRPCGas"), name);
00787 
00788     G4VisAttributes* vis = new G4VisAttributes();
00789     vis->SetColor(G4Color::Blue());
00790     //vis->SetForceSolid(true); 
00791     //logical_gasLayer->SetVisAttributes(vis);
00792 
00793     return logical_gasLayer;
00794 }

G4LogicalVolume * PartProduce::lg_glass ( G4int  flag,
string  name = "" 
)

Definition at line 747 of file PartProduce.cc.

References glass0_xdown, glass0_xup, glass0_y, glass0_z, glass1_xdown, glass1_xup, glass1_y, glass1_z, and Name.

Referenced by BesTofConstruction::ConstructEcTof_mrpc().

00747                                                                     :0:out; 1:inside
00748 {
00749     double glass_xdown;
00750     double glass_xup;
00751     double glass_y;
00752     double glass_z;
00753     if(flag==0)
00754     {
00755         glass_xdown = glass0_xdown;
00756         glass_xup = glass0_xup;
00757         glass_y = glass0_y;
00758         glass_z = glass0_z;
00759     }
00760     else
00761     {
00762         glass_xdown = glass1_xdown;
00763         glass_xup = glass1_xup;
00764         glass_y = glass1_y;
00765         glass_z = glass1_z;
00766     }
00767 
00768     Name.str("");
00769     Name<<"solid_glass_"<<name;
00770     G4Trd* solid_glass = new G4Trd(Name.str(), glass_xdown/2.,glass_xup/2. ,glass_y/2.,glass_y/2.,glass_z/2.);
00771     G4LogicalVolume* logical_glass = new G4LogicalVolume(solid_glass,G4Material::GetMaterial("SiO2"), name);
00772 
00773     G4VisAttributes* vis = new G4VisAttributes();
00774     vis->SetColor(G4Color(0.2, 0.4, 1));
00775     //vis->SetForceSolid(true); 
00776     logical_glass->SetVisAttributes(vis);
00777 
00778     return logical_glass;
00779 }

G4LogicalVolume * PartProduce::lg_honeyComb ( string  name = ""  ) 

Definition at line 627 of file PartProduce.cc.

References checkOverlap, honeyComb_surface_y, honeyComb_xdown, honeyComb_xup, honeyComb_y, honeyComb_z, Name, and smallL.

Referenced by BesTofConstruction::ConstructEcTof_mrpc().

00628 {
00629     Name.str("");
00630     Name<<"solid_honeyComb_"<<name;
00631     G4Trd* solid_honeyComb = new G4Trd(Name.str(), honeyComb_xdown/2, honeyComb_xup/2, honeyComb_y/2, honeyComb_y/2, honeyComb_z/2);
00632     G4LogicalVolume* logical_honeyComb = new G4LogicalVolume(solid_honeyComb, G4Material::GetMaterial("honeycombCore"), name);
00633 
00634     //Two surfaces
00635     Name.str("");
00636     Name<<"solid_honeyComb_surface_"<<name;
00637     G4Trd* solid_honeyComb_surface = new G4Trd(Name.str(), honeyComb_xdown/2, honeyComb_xup/2, honeyComb_surface_y/2, honeyComb_surface_y/2, honeyComb_z/2);
00638 
00639     Name.str("");
00640     Name<<"logical_honeyComb_surface_"<<name;
00641     G4LogicalVolume* logical_honeyComb_surface = new G4LogicalVolume(solid_honeyComb_surface, G4Material::GetMaterial("insulationBoard"), Name.str());
00642 
00643     Name.str("");
00644     Name<<"physical_honeyComb_surface_"<<name<<"_0";
00645     new G4PVPlacement(0, G4ThreeVector(0,(honeyComb_y-honeyComb_surface_y)/2.-smallL,0), logical_honeyComb_surface, Name.str(), logical_honeyComb, false, 0, checkOverlap);
00646 
00647     Name.str("");
00648     Name<<"physical_honeyComb_surface_"<<name<<"_1";
00649     new G4PVPlacement(0, G4ThreeVector(0,-(honeyComb_y-honeyComb_surface_y)/2.+smallL,0), logical_honeyComb_surface, Name.str(), logical_honeyComb, false, 0, checkOverlap);
00650 
00651     G4VisAttributes* vis1 = new G4VisAttributes();
00652     vis1->SetColor(G4Color::Green());
00653     //vis1->SetForceWireframe(true);
00654     logical_honeyComb_surface->SetVisAttributes(vis1);
00655 
00656     G4VisAttributes* vis = new G4VisAttributes();
00657     vis->SetColor(G4Color(0.55, 0.3, 0.3));
00658     //vis->SetForceWireframe(true);     
00659     logical_honeyComb->SetVisAttributes(vis);
00660 
00661     return logical_honeyComb;
00662 }

G4LogicalVolume * PartProduce::lg_lowCover1 ( string  name = ""  ) 

Definition at line 270 of file PartProduce.cc.

References Name, and sd_lowCover1().

Referenced by BesTofConstruction::ConstructEcTof_mrpc().

00271 {
00272     Name.str("");
00273     Name<<"solid_lowCover1_"<<name;
00274     G4VSolid* solid_lowCover1 = sd_lowCover1(0, Name.str());
00275     G4LogicalVolume* logical_lowCover1 = new G4LogicalVolume(solid_lowCover1, G4Material::GetMaterial("Aluminium"), name);
00276 
00277     G4VisAttributes* vis = new G4VisAttributes();
00278     vis->SetColor(G4Color(0.5,0.5,0.6));
00279     //vis->SetForceWireframe(true);     
00280     logical_lowCover1->SetVisAttributes(vis);
00281 
00282     return logical_lowCover1;
00283 }

G4LogicalVolume * PartProduce::lg_lowCover2 ( string  name = ""  ) 

Definition at line 285 of file PartProduce.cc.

References Name, and sd_lowCover2().

Referenced by BesTofConstruction::ConstructEcTof_mrpc().

00286 {
00287     Name.str("");
00288     Name<<"solid_lowCover2_"<<name;
00289     G4VSolid* solid_lowCover2 = sd_lowCover2(0, Name.str());
00290     G4LogicalVolume* logical_lowCover2 = new G4LogicalVolume(solid_lowCover2, G4Material::GetMaterial("Aluminium"), name);
00291 
00292     G4VisAttributes* vis = new G4VisAttributes();
00293     vis->SetColor(G4Color(0.5,0.5,0.6));
00294     //vis->SetForceWireframe(true);     
00295     logical_lowCover2->SetVisAttributes(vis);
00296 
00297     return logical_lowCover2;
00298 }

G4LogicalVolume * PartProduce::lg_mylar ( string  name = ""  ) 

Definition at line 732 of file PartProduce.cc.

References mylar_xdown, mylar_xup, mylar_y, mylar_z, and Name.

Referenced by BesTofConstruction::ConstructEcTof_mrpc().

00733 {
00734     Name.str("");
00735     Name<<"solid_mylar_"<<name;
00736     G4Trd* solid_mylar = new G4Trd(Name.str(),mylar_xdown/2.,mylar_xup/2.,mylar_y/2.,mylar_y/2.,mylar_z/2.);
00737     G4LogicalVolume* logical_mylar = new G4LogicalVolume(solid_mylar,G4Material::GetMaterial("PET"), name);
00738 
00739     G4VisAttributes* vis = new G4VisAttributes();
00740     vis->SetColor(G4Color(1, 0., 0.7));
00741     //vis->SetForceSolid(true); 
00742     logical_mylar->SetVisAttributes(vis);
00743 
00744     return logical_mylar;
00745 }

G4LogicalVolume * PartProduce::lg_pcbBoard ( G4int  flag,
string  name = "" 
)

Definition at line 680 of file PartProduce.cc.

References Name, pcbBoard_xdown, pcbBoard_xup, pcbBoard_y0, pcbBoard_y1, and pcbBoard_z.

Referenced by BesTofConstruction::ConstructEcTof_mrpc().

00680                                                                        :0:out; 1:inside
00681 {
00682     double pcbBoard_y;
00683     if(flag==0) pcbBoard_y=pcbBoard_y0;
00684     else pcbBoard_y=pcbBoard_y1;
00685 
00686     Name.str("");
00687     Name<<"solid_pcbBoard_"<<name;
00688     G4Trd* solid_pcbBoard = new G4Trd(Name.str(),pcbBoard_xdown/2., pcbBoard_xup/2., pcbBoard_y/2., pcbBoard_y/2.,pcbBoard_z/2.);
00689     G4LogicalVolume* logical_pcbBoard = new G4LogicalVolume(solid_pcbBoard,G4Material::GetMaterial("insulationBoard"), name);
00690 
00691     G4VisAttributes* vis = new G4VisAttributes();
00692     vis->SetColor(G4Color(0.2, 1, 0));
00693     //vis->SetForceSolid(true); 
00694     //vis->SetForceWireframe(true); 
00695     logical_pcbBoard->SetVisAttributes(vis);
00696 
00697     return logical_pcbBoard;
00698 }

G4LogicalVolume * PartProduce::lg_sideFEE ( string  name = ""  ) 

Definition at line 390 of file PartProduce.cc.

References checkOverlap, FEE_thickness, lg_sideFEE_pcb(), Name, rot_dummy(), sd_sideFEE(), sideFEE_x, sideFEE_y, sideFEE_z, and smallL.

Referenced by BesTofConstruction::ConstructEcTof_mrpc().

00391 {
00392     Name.str("");
00393     Name<<"solid_sideFEE_"<<name;
00394     G4VSolid* solid_sideFEE = sd_sideFEE(0, Name.str());
00395     G4LogicalVolume* logical_sideFEE = new G4LogicalVolume(solid_sideFEE, G4Material::GetMaterial("Air"), name);
00396 
00397     Name.str("");
00398     Name<<"solid_sideFEE_out_"<<name;
00399     G4VSolid* solid_sideFEE_out = sd_sideFEE(-1*smallL, Name.str());
00400 
00401     Name.str("");
00402     Name<<"solid_sideFEE_in_"<<name;
00403     G4Trd* solid_sideFEE_in = new G4Trd(Name.str(), sideFEE_x/2, sideFEE_x/2, sideFEE_y/2-FEE_thickness, sideFEE_y/2-FEE_thickness, sideFEE_z/2-FEE_thickness);
00404 
00405     Name.str("");
00406     Name<<"solid_sideFEE_box_"<<name;
00407     G4Transform3D transform_sideFEE(rot_dummy, G4ThreeVector(FEE_thickness, 0, 0));
00408     G4SubtractionSolid* solid_sideFEE_box = new G4SubtractionSolid(Name.str(), solid_sideFEE_out, solid_sideFEE_in, transform_sideFEE);
00409 
00410     Name.str("");
00411     Name<<"logical_sideFEE_box_"<<name;
00412     G4LogicalVolume* logical_sideFEE_box = new G4LogicalVolume(solid_sideFEE_box, G4Material::GetMaterial("Aluminium"), Name.str());
00413 
00414     Name.str("");
00415     Name<<"logical_sideFEE_pcb_"<<name;
00416     G4LogicalVolume* logical_sideFEE_pcb = lg_sideFEE_pcb(Name.str());
00417 
00418     Name.str("");
00419     Name<<"physical_sideFEE_pcb_"<<name;
00420     new G4PVPlacement(0, G4ThreeVector(0,0,0), logical_sideFEE_pcb, Name.str(), logical_sideFEE, false, 0, checkOverlap);
00421 
00422     Name.str("");
00423     Name<<"physical_sideFEE_box_"<<name;
00424     new G4PVPlacement(0, G4ThreeVector(0,0,0), logical_sideFEE_box, Name.str(), logical_sideFEE, false, 0, checkOverlap);
00425 
00426     G4VisAttributes* vis = new G4VisAttributes();
00427     vis->SetColor(G4Color(0.2,0.,1));
00428     //vis->SetForceWireframe(true);     
00429     logical_sideFEE_box->SetVisAttributes(vis);
00430 
00431     G4VisAttributes* vis1 = new G4VisAttributes();
00432     vis1->SetVisibility(0);
00433     logical_sideFEE->SetVisAttributes(vis1);
00434 
00435     return logical_sideFEE;
00436 }

G4LogicalVolume * PartProduce::lg_sideFEE_pcb ( string  name = ""  ) 

Definition at line 376 of file PartProduce.cc.

References Name, sideFEE_pcb_x, sideFEE_pcb_y, and sideFEE_pcb_z.

Referenced by lg_sideFEE().

00377 {
00378     Name.str("");
00379     Name<<"solid_sideFEE_pcb_"<<name;
00380     G4Trd* solid_sideFEE_pcb = new G4Trd(Name.str(), sideFEE_pcb_x/2, sideFEE_pcb_x/2, sideFEE_pcb_y/2, sideFEE_pcb_y/2, sideFEE_pcb_z/2);
00381     G4LogicalVolume* logical_sideFEE_pcb = new G4LogicalVolume(solid_sideFEE_pcb, G4Material::GetMaterial("insulationBoard"), name);
00382 
00383     G4VisAttributes* vis = new G4VisAttributes();
00384     vis->SetColor(G4Color(0.2, 1, 0));
00385     logical_sideFEE_pcb->SetVisAttributes(vis);
00386 
00387     return logical_sideFEE_pcb;
00388 }

G4LogicalVolume * PartProduce::lg_sideStopBlock ( string  name = ""  ) 

Definition at line 848 of file PartProduce.cc.

References Name, rot_dummy(), sideStopBlock_thickness, sideStopBlock_x, sideStopBlock_y, sideStopBlock_z, and smallL.

Referenced by BesTofConstruction::ConstructEcTof_mrpc().

00849 {
00850     Name.str("");
00851     Name<<"solid_sideStopBlock_"<<name<<"_1";
00852     G4Trd* solid_sideStopBlock_1 = new G4Trd(Name.str(), sideStopBlock_x/2, sideStopBlock_x/2, sideStopBlock_y/2, sideStopBlock_y/2, sideStopBlock_z/2);
00853 
00854     Name.str("");
00855     Name<<"solid_sideStopBlock_"<<name<<"_2";
00856     G4Trd* solid_sideStopBlock_2 = new G4Trd(Name.str(), (sideStopBlock_x-sideStopBlock_thickness)/2+smallL, (sideStopBlock_x-sideStopBlock_thickness)/2+smallL, sideStopBlock_y/2+smallL, sideStopBlock_y/2+smallL, sideStopBlock_z/2-sideStopBlock_thickness);
00857 
00858     G4Transform3D transform_upStopBlock(rot_dummy, G4ThreeVector(sideStopBlock_thickness/2, 0, 0));
00859 
00860     Name.str("");
00861     Name<<"solid_sideStopBlock_"<<name;
00862     G4SubtractionSolid* solid_sideStopBlock = new G4SubtractionSolid(Name.str(), solid_sideStopBlock_1, solid_sideStopBlock_2, transform_upStopBlock);
00863     G4LogicalVolume* logical_sideStopBlock = new G4LogicalVolume(solid_sideStopBlock, G4Material::GetMaterial("Nylon"), name);
00864 
00865     G4VisAttributes* vis = new G4VisAttributes();
00866     vis->SetColor(G4Color(0.3, 0.3, 0.3));
00867     //vis->SetForceSolid(true); 
00868     logical_sideStopBlock->SetVisAttributes(vis);
00869 
00870     return logical_sideStopBlock;
00871 }

G4AssemblyVolume * PartProduce::lg_strip ( string  name = ""  ) 

Definition at line 700 of file PartProduce.cc.

References genRecEmupikp::i, Name, rot_dummy(), strip_gap, strip_x, strip_y, and strip_z.

Referenced by BesTofConstruction::ConstructEcTof_mrpc().

00701 {
00702     const G4int no=12;
00703     G4Trd* solid_strip[no];
00704     G4LogicalVolume* logical_strip[no];
00705     G4VisAttributes* vis = new G4VisAttributes();
00706     vis->SetColor(G4Color(1, 0, 0));
00707     vis->SetForceSolid(1);
00708     for(G4int i=0; i<no; i++)
00709     {
00710         Name.str("");
00711         Name<<"solid_strip_"<<name<<"_"<<i;
00712         solid_strip[i] = new G4Trd(Name.str(), strip_x[i]/2., strip_x[i]/2., strip_y/2., strip_y/2., strip_z/2.);
00713         Name.str("");
00714         Name<<name<<"_"<<i;
00715         logical_strip[i] = new G4LogicalVolume(solid_strip[i], G4Material::GetMaterial("Copper"), Name.str());
00716         logical_strip[i]->SetVisAttributes(vis);
00717     }
00718 
00719     G4AssemblyVolume* logical_strip_unified = new G4AssemblyVolume();
00720     G4ThreeVector translation_strip;
00721     G4Transform3D transform_strip;
00722     for(G4int i=0; i<no; i++)
00723     {
00724         translation_strip.set(0, 0, (i-5.5)*(strip_z+strip_gap));
00725         transform_strip = G4Transform3D(rot_dummy, translation_strip);
00726         logical_strip_unified->AddPlacedVolume(logical_strip[i], transform_strip);
00727     }
00728 
00729     return logical_strip_unified;
00730 }

G4LogicalVolume * PartProduce::lg_tape_mrpc ( string  name = ""  ) 

Definition at line 664 of file PartProduce.cc.

References Name, tape_mrpc_xdown, tape_mrpc_xup, tape_mrpc_y, and tape_mrpc_z.

Referenced by BesTofConstruction::ConstructEcTof_mrpc().

00665 {
00666     Name.str("");
00667     Name<<"solid_tape_mrpc_"<<name;
00668     G4Trd* solid_tape_mrpc= new  G4Trd(Name.str(),tape_mrpc_xdown/2,tape_mrpc_xup/2,tape_mrpc_y/2,tape_mrpc_y/2,tape_mrpc_z/2);
00669     G4LogicalVolume* logical_tape_mrpc = new G4LogicalVolume(solid_tape_mrpc,G4Material::GetMaterial("PET"), name);
00670 
00671     G4VisAttributes* vis = new G4VisAttributes();
00672     vis->SetColor(G4Color(1, 1, 0));
00673     //vis->SetForceWireframe(true);     
00674     //vis->SetForceSolid(true); 
00675     logical_tape_mrpc->SetVisAttributes(vis);
00676 
00677     return logical_tape_mrpc;
00678 }

G4LogicalVolume * PartProduce::lg_upCover ( string  name = ""  ) 

Definition at line 255 of file PartProduce.cc.

References Name, and sd_upCover().

Referenced by BesTofConstruction::ConstructEcTof_mrpc().

00256 {
00257     Name.str("");
00258     Name<<"solid_upCover_"<<name;
00259     G4VSolid* solid_upCover = sd_upCover(0, Name.str());
00260     G4LogicalVolume* logical_upCover = new G4LogicalVolume(solid_upCover, G4Material::GetMaterial("Aluminium"), name);
00261 
00262     G4VisAttributes* vis = new G4VisAttributes();
00263     vis->SetColor(G4Color(0.5,0.5,0.6));
00264     //vis->SetForceWireframe(true);     
00265     logical_upCover->SetVisAttributes(vis);
00266 
00267     return logical_upCover;
00268 }

G4LogicalVolume * PartProduce::lg_upFEE ( string  name = ""  ) 

Definition at line 321 of file PartProduce.cc.

References checkOverlap, FEE_thickness, lg_upFEE_pcb(), Name, rot_dummy(), sd_upFEE(), smallL, upFEE_xdown, upFEE_xup, upFEE_y, and upFEE_z.

Referenced by BesTofConstruction::ConstructEcTof_mrpc().

00322 {
00323     Name.str("");
00324     Name<<"solid_upFEE_"<<name;
00325     G4VSolid* solid_upFEE = sd_upFEE(0, Name.str());
00326     G4LogicalVolume* logical_upFEE = new G4LogicalVolume(solid_upFEE, G4Material::GetMaterial("Air"), name);
00327 
00328     Name.str("");
00329     Name<<"solid_upFEE_out_"<<name;
00330     G4VSolid* solid_upFEE_out = sd_upFEE(-1*smallL, Name.str());
00331 
00332     Name.str("");
00333     Name<<"solid_upFEE_in_"<<name;
00334     G4Trd* solid_upFEE_in = new G4Trd(Name.str(), upFEE_xdown/2-FEE_thickness, upFEE_xup/2-FEE_thickness, upFEE_y/2, upFEE_y/2, upFEE_z/2-FEE_thickness);
00335 
00336     Name.str("");
00337     Name<<"solid_upFEE_box_"<<name;
00338     G4Transform3D transform_upFEE(rot_dummy, G4ThreeVector(0, -1*FEE_thickness, 0));
00339     G4SubtractionSolid* solid_upFEE_box = new G4SubtractionSolid(Name.str(), solid_upFEE_out, solid_upFEE_in, transform_upFEE);
00340 
00341     Name.str("");
00342     Name<<"logical_upFEE_box_"<<name;
00343     G4LogicalVolume* logical_upFEE_box = new G4LogicalVolume(solid_upFEE_box, G4Material::GetMaterial("Aluminium"), Name.str());
00344 
00345     Name.str("");
00346     Name<<"logical_upFEE_pcb_"<<name;
00347     G4LogicalVolume* logical_upFEE_pcb = lg_upFEE_pcb(Name.str());
00348 
00349     Name.str("");
00350     Name<<"physical_upFEE_pcb_"<<name;
00351     new G4PVPlacement(0, G4ThreeVector(0,0,0), logical_upFEE_pcb, Name.str(), logical_upFEE, false, 0, checkOverlap);
00352 
00353     Name.str("");
00354     Name<<"physical_upFEE_box_"<<name;
00355     new G4PVPlacement(0, G4ThreeVector(0,0,0), logical_upFEE_box, Name.str(), logical_upFEE, false, 0, checkOverlap);
00356 
00357     G4VisAttributes* vis = new G4VisAttributes();
00358     vis->SetColor(G4Color(0.2,0.,1));
00359     //vis->SetForceWireframe(true);     
00360     logical_upFEE_box->SetVisAttributes(vis);
00361 
00362     G4VisAttributes* vis1 = new G4VisAttributes();
00363     vis1->SetVisibility(0);
00364     logical_upFEE->SetVisAttributes(vis1);
00365 
00366     return logical_upFEE;
00367 }

G4LogicalVolume * PartProduce::lg_upFEE_pcb ( string  name = ""  ) 

Definition at line 306 of file PartProduce.cc.

References Name, upFEE_pcb_xdown, upFEE_pcb_xup, upFEE_pcb_y, and upFEE_pcb_z.

Referenced by lg_upFEE().

00307 {
00308     Name.str("");
00309     Name<<"solid_upFEE_pcb_"<<name;
00310     G4Trd* solid_upFEE_pcb = new G4Trd(Name.str(), upFEE_pcb_xdown/2, upFEE_pcb_xup/2, upFEE_pcb_y/2, upFEE_pcb_y/2, upFEE_pcb_z/2);
00311     G4LogicalVolume* logical_upFEE_pcb = new G4LogicalVolume(solid_upFEE_pcb, G4Material::GetMaterial("insulationBoard"), name);
00312 
00313     G4VisAttributes* vis = new G4VisAttributes();
00314     vis->SetForceWireframe(true);
00315     vis->SetColor(G4Color(0.2, 1, 0));
00316     logical_upFEE_pcb->SetVisAttributes(vis);
00317 
00318     return logical_upFEE_pcb;
00319 }

G4LogicalVolume * PartProduce::lg_upStopBlock ( string  name = ""  ) 

Definition at line 820 of file PartProduce.cc.

References Name, smallL, upStopBlock_subtractposz, upStopBlock_subtractr, upStopBlock_x, upStopBlock_y, and upStopBlock_z.

Referenced by BesTofConstruction::ConstructEcTof_mrpc().

00821 {
00822     Name.str("");
00823     Name<<"solid_upStopBlock_"<<name<<"_1";
00824     G4Trd* solid_upStopBlock_1 = new G4Trd(Name.str(), upStopBlock_x/2, upStopBlock_x/2, upStopBlock_y/2, upStopBlock_y/2, upStopBlock_z/2);
00825 
00826     Name.str("");
00827     Name<<"solid_upStopBlock_"<<name<<"_2";
00828     G4Tubs* solid_upStopBlock_2 = new G4Tubs(Name.str(), 0, upStopBlock_subtractr+smallL, upStopBlock_x/2+smallL, 0*degree, 360*degree);
00829 
00830     G4RotationMatrix rot_upStopBlock;
00831     //Rotation outside of the transform3D. In transform3D the 3 angles are Euler
00832     rot_upStopBlock.rotateY(90*degree);
00833     G4Transform3D transform_upStopBlock(rot_upStopBlock, G4ThreeVector(0,0,(upStopBlock_z-upStopBlock_subtractr)/2-upStopBlock_subtractposz));
00834 
00835     Name.str("");
00836     Name<<"solid_upStopBlock_"<<name;
00837     G4SubtractionSolid* solid_upStopBlock = new G4SubtractionSolid(Name.str(), solid_upStopBlock_1, solid_upStopBlock_2, transform_upStopBlock);
00838     G4LogicalVolume* logical_upStopBlock = new G4LogicalVolume(solid_upStopBlock, G4Material::GetMaterial("Nylon"), name);
00839 
00840     G4VisAttributes* vis = new G4VisAttributes();
00841     vis->SetColor(G4Color(0.3, 0.3, 0.3));
00842     //vis->SetForceSolid(true); 
00843     logical_upStopBlock->SetVisAttributes(vis);
00844 
00845     return logical_upStopBlock;
00846 }

G4VSolid * PartProduce::sd_castingDie_outline ( double  smallL = 0,
string  name = "" 
)

Definition at line 439 of file PartProduce.cc.

References castingDie_addr, castingDie_x, castingDie_y, castingDie_z, Name, and rot_dummy().

Referenced by lg_castingDie(), and lg_container().

00440 {
00441     Name.str("");
00442     Name<<name<<"_1";
00443     //We make Z larger by 10*smallL to make a successful connection with the cover
00444     G4Trd* solid_castingDie_outline_1 = new G4Trd(Name.str(), castingDie_x/2+smallL, castingDie_x/2+smallL, castingDie_y/2+smallL, castingDie_y/2+smallL, castingDie_z/2+smallL*10);
00445     Name.str("");
00446     Name<<name<<"_2";
00447     G4Tubs* solid_castingDie_outline_2 = new G4Tubs(Name.str(), 0, castingDie_addr+smallL, castingDie_z/2+smallL*10, 0*degree, 360*degree);
00448 
00449     //We make a 0.1*mm for successful connection
00450     G4Transform3D transform_castingDie_outline_1(rot_dummy, G4ThreeVector(castingDie_x/2-0.1*mm,0,0));
00451     Name.str("");
00452     Name<<name<<"_3";
00453     G4UnionSolid* solid_castingDie_outline_3 = new G4UnionSolid(Name.str(), solid_castingDie_outline_1, solid_castingDie_outline_2, transform_castingDie_outline_1);
00454 
00455     G4Transform3D transform_castingDie_outline_2(rot_dummy, G4ThreeVector(-1*castingDie_x/2+0.1*mm,0,0));
00456     G4UnionSolid* solid_castingDie_outline = new G4UnionSolid(name, solid_castingDie_outline_3, solid_castingDie_outline_2, transform_castingDie_outline_2);
00457     return solid_castingDie_outline;
00458 }

G4VSolid * PartProduce::sd_containerIn ( double  smallL = 0,
string  name = "" 
)

Definition at line 198 of file PartProduce.cc.

References containerIn_xdown, containerIn_xup, containerIn_y, and containerIn_z.

Referenced by lg_containerFrame(), and lg_gasContainer().

00199 {
00200     G4Trd* solid_containerIn = new G4Trd(name, containerIn_xdown/2+smallL, containerIn_xup/2+smallL, containerIn_y/2+smallL, containerIn_y/2+smallL, containerIn_z/2+smallL);
00201     return solid_containerIn;
00202 }

G4VSolid * PartProduce::sd_containerOut ( double  smallL = 0,
string  name = "" 
)

Definition at line 192 of file PartProduce.cc.

References containerOut_xdown, containerOut_xup, containerOut_y, and containerOut_z.

Referenced by lg_container(), and lg_containerFrame().

00193 {
00194     G4Trd* solid_containerOut = new G4Trd(name, containerOut_xdown/2+smallL, containerOut_xup/2+smallL, containerOut_y/2+smallL, containerOut_y/2+smallL, containerOut_z/2+smallL);
00195     return solid_containerOut;
00196 }

G4VSolid * PartProduce::sd_lowCover1 ( double  smallL = 0,
string  name = "" 
)

Definition at line 234 of file PartProduce.cc.

References lowCover1_addx, lowCover1_addz, lowCover1_xdown, lowCover1_xup, lowCover1_y, lowCover1_z, Name, and rot_dummy().

Referenced by lg_container(), and lg_lowCover1().

00235 {
00236     Name.str("");
00237     Name<<name<<"_1";
00238     G4Trd* solid_lowCover1_1 = new G4Trd(Name.str(), lowCover1_xdown/2+smallL, lowCover1_xup/2+smallL, lowCover1_y/2+smallL, lowCover1_y/2+smallL, lowCover1_z/2+smallL);
00239 
00240     Name.str("");
00241     Name<<name<<"_2";
00242     G4Trd* solid_lowCover1_2 = new G4Trd(Name.str(), lowCover1_addx/2+smallL, lowCover1_addx/2+smallL, lowCover1_y/2+smallL, lowCover1_y/2+smallL, lowCover1_addz/2+smallL);
00243 
00244     G4Transform3D transform_lowCover1(rot_dummy, G4ThreeVector(0,0,-(lowCover1_z+lowCover1_addz)/2));
00245     G4UnionSolid* solid_lowCover1 = new G4UnionSolid(name, solid_lowCover1_1, solid_lowCover1_2, transform_lowCover1);
00246     return solid_lowCover1;
00247 }

G4VSolid * PartProduce::sd_lowCover2 ( double  smallL = 0,
string  name = "" 
)

Definition at line 249 of file PartProduce.cc.

References lowCover2_xdown, lowCover2_xup, lowCover2_y, and lowCover2_z.

Referenced by lg_container(), and lg_lowCover2().

00250 {
00251     G4Trd* solid_lowCover2 = new G4Trd(name, lowCover2_xdown/2+smallL, lowCover2_xup/2+smallL, lowCover2_y/2+smallL, lowCover2_y/2+smallL, lowCover2_z/2+smallL);
00252     return solid_lowCover2;
00253 }

G4VSolid * PartProduce::sd_sideFEE ( double  smallL = 0,
string  name = "" 
)

Definition at line 370 of file PartProduce.cc.

References sideFEE_x, sideFEE_y, and sideFEE_z.

Referenced by lg_container(), and lg_sideFEE().

00371 {
00372     G4Trd* solid_sideFEE = new G4Trd(name, sideFEE_x/2+smallL, sideFEE_x/2+smallL, sideFEE_y/2+smallL, sideFEE_y/2+smallL, sideFEE_z/2+smallL);
00373     return solid_sideFEE;
00374 }

G4VSolid * PartProduce::sd_upCover ( double  smallL = 0,
string  name = "" 
)

Definition at line 228 of file PartProduce.cc.

References upCover_xdown, upCover_xup, upCover_y, and upCover_z.

Referenced by lg_container(), and lg_upCover().

00229 {
00230     G4Trd* solid_upCover = new G4Trd(name, upCover_xdown/2+smallL, upCover_xup/2+smallL, upCover_y/2+smallL, upCover_y/2+smallL, upCover_z/2+smallL);
00231     return solid_upCover;
00232 }

G4VSolid * PartProduce::sd_upFEE ( double  smallL = 0,
string  name = "" 
)

Definition at line 300 of file PartProduce.cc.

References upFEE_xdown, upFEE_xup, upFEE_y, and upFEE_z.

Referenced by lg_container(), and lg_upFEE().

00301 {
00302     G4Trd* solid_upFEE = new G4Trd(name, upFEE_xdown/2+smallL, upFEE_xup/2+smallL, upFEE_y/2+smallL, upFEE_y/2+smallL, upFEE_z/2+smallL);
00303     return solid_upFEE;
00304 }


Member Data Documentation

G4double PartProduce::bracket_posx [private]

Definition at line 129 of file PartProduce.hh.

Referenced by IniParam().

G4double PartProduce::bracket_r [private]

Definition at line 128 of file PartProduce.hh.

Referenced by IniParam(), and lg_bracket().

G4double PartProduce::bracket_x [private]

Definition at line 125 of file PartProduce.hh.

Referenced by IniParam(), and lg_bracket().

G4double PartProduce::bracket_y [private]

Definition at line 126 of file PartProduce.hh.

Referenced by IniParam(), and lg_bracket().

G4double PartProduce::bracket_z [private]

Definition at line 127 of file PartProduce.hh.

Referenced by IniParam(), and lg_bracket().

G4double PartProduce::castingDie_addr [private]

Definition at line 115 of file PartProduce.hh.

Referenced by IniParam(), and sd_castingDie_outline().

G4double PartProduce::castingDie_posz1 [private]

Definition at line 118 of file PartProduce.hh.

Referenced by IniParam(), and lg_container().

G4double PartProduce::castingDie_posz2 [private]

Definition at line 119 of file PartProduce.hh.

Referenced by IniParam(), and lg_container().

G4double PartProduce::castingDie_subtract_posz [private]

Definition at line 117 of file PartProduce.hh.

Referenced by IniParam(), and lg_castingDie().

G4double PartProduce::castingDie_subtractx [private]

Definition at line 116 of file PartProduce.hh.

Referenced by IniParam(), and lg_castingDie().

G4double PartProduce::castingDie_x [private]

Definition at line 112 of file PartProduce.hh.

Referenced by IniParam(), and sd_castingDie_outline().

G4double PartProduce::castingDie_y [private]

Definition at line 113 of file PartProduce.hh.

Referenced by IniParam(), lg_castingDie(), and sd_castingDie_outline().

G4double PartProduce::castingDie_z [private]

Definition at line 114 of file PartProduce.hh.

Referenced by IniParam(), lg_castingDie(), lg_container(), and sd_castingDie_outline().

G4double PartProduce::chamber_in_posy [private]

Definition at line 122 of file PartProduce.hh.

Referenced by IniParam().

G4double PartProduce::chamber_out_posy [private]

Definition at line 123 of file PartProduce.hh.

Referenced by IniParam().

G4double PartProduce::container_lowBorder [private]

Definition at line 64 of file PartProduce.hh.

Referenced by IniParam(), and lg_containerFrame().

G4double PartProduce::container_thickness [private]

Definition at line 63 of file PartProduce.hh.

Referenced by IniParam(), and lg_containerFrame().

G4double PartProduce::containerIn_xdown [private]

Definition at line 66 of file PartProduce.hh.

Referenced by IniParam(), and sd_containerIn().

G4double PartProduce::containerIn_xup [private]

Definition at line 67 of file PartProduce.hh.

Referenced by IniParam(), and sd_containerIn().

G4double PartProduce::containerIn_y [private]

Definition at line 68 of file PartProduce.hh.

Referenced by IniParam(), and sd_containerIn().

G4double PartProduce::containerIn_z [private]

Definition at line 69 of file PartProduce.hh.

Referenced by IniParam(), and sd_containerIn().

G4double PartProduce::containerOut_xdown [private]

Definition at line 59 of file PartProduce.hh.

Referenced by IniParam(), lg_container(), and sd_containerOut().

G4double PartProduce::containerOut_xup [private]

Definition at line 60 of file PartProduce.hh.

Referenced by IniParam(), lg_container(), and sd_containerOut().

G4double PartProduce::containerOut_y [private]

Definition at line 61 of file PartProduce.hh.

Referenced by IniParam(), lg_container(), and sd_containerOut().

G4double PartProduce::containerOut_z [private]

Definition at line 62 of file PartProduce.hh.

Referenced by IniParam(), lg_container(), and sd_containerOut().

G4double PartProduce::endcap_length [private]

Definition at line 194 of file PartProduce.hh.

Referenced by IniParam().

G4double PartProduce::endcap_r [private]

Definition at line 193 of file PartProduce.hh.

Referenced by IniParam().

G4double PartProduce::FEE_thickness [private]

Definition at line 95 of file PartProduce.hh.

Referenced by IniParam(), lg_sideFEE(), and lg_upFEE().

G4double PartProduce::gasLayer_posz [private]

Definition at line 191 of file PartProduce.hh.

Referenced by IniParam().

G4double PartProduce::gasLayer_xdown [private]

Definition at line 187 of file PartProduce.hh.

Referenced by IniParam(), and lg_gasLayer().

G4double PartProduce::gasLayer_xup [private]

Definition at line 188 of file PartProduce.hh.

Referenced by IniParam(), and lg_gasLayer().

G4double PartProduce::gasLayer_y [private]

Definition at line 189 of file PartProduce.hh.

Referenced by IniParam(), lg_bareChamber(), and lg_gasLayer().

G4double PartProduce::gasLayer_z [private]

Definition at line 190 of file PartProduce.hh.

Referenced by IniParam(), and lg_gasLayer().

G4double PartProduce::glass0_posz [private]

Definition at line 179 of file PartProduce.hh.

Referenced by IniParam().

G4double PartProduce::glass0_xdown [private]

Definition at line 175 of file PartProduce.hh.

Referenced by IniParam(), and lg_glass().

G4double PartProduce::glass0_xup [private]

Definition at line 176 of file PartProduce.hh.

Referenced by IniParam(), and lg_glass().

G4double PartProduce::glass0_y [private]

Definition at line 177 of file PartProduce.hh.

Referenced by IniParam(), lg_bareChamber(), and lg_glass().

G4double PartProduce::glass0_z [private]

Definition at line 178 of file PartProduce.hh.

Referenced by IniParam(), and lg_glass().

G4double PartProduce::glass1_posz [private]

Definition at line 185 of file PartProduce.hh.

Referenced by IniParam().

G4double PartProduce::glass1_xdown [private]

Definition at line 181 of file PartProduce.hh.

Referenced by IniParam(), and lg_glass().

G4double PartProduce::glass1_xup [private]

Definition at line 182 of file PartProduce.hh.

Referenced by IniParam(), and lg_glass().

G4double PartProduce::glass1_y [private]

Definition at line 183 of file PartProduce.hh.

Referenced by IniParam(), lg_bareChamber(), and lg_glass().

G4double PartProduce::glass1_z [private]

Definition at line 184 of file PartProduce.hh.

Referenced by IniParam(), and lg_glass().

G4double PartProduce::honeyComb_posz [private]

Definition at line 149 of file PartProduce.hh.

Referenced by IniParam().

G4double PartProduce::honeyComb_surface_y [private]

Definition at line 148 of file PartProduce.hh.

Referenced by IniParam(), and lg_honeyComb().

G4double PartProduce::honeyComb_xdown [private]

Definition at line 144 of file PartProduce.hh.

Referenced by IniParam(), and lg_honeyComb().

G4double PartProduce::honeyComb_xup [private]

Definition at line 145 of file PartProduce.hh.

Referenced by IniParam(), and lg_honeyComb().

G4double PartProduce::honeyComb_y [private]

Definition at line 146 of file PartProduce.hh.

Referenced by IniParam(), lg_bareChamber(), and lg_honeyComb().

G4double PartProduce::honeyComb_z [private]

Definition at line 147 of file PartProduce.hh.

Referenced by IniParam(), and lg_honeyComb().

G4double PartProduce::layer_posz [private]

Definition at line 195 of file PartProduce.hh.

Referenced by IniParam().

G4double PartProduce::lowCover1_addx [private]

Definition at line 81 of file PartProduce.hh.

Referenced by IniParam(), and sd_lowCover1().

G4double PartProduce::lowCover1_addz [private]

Definition at line 82 of file PartProduce.hh.

Referenced by IniParam(), and sd_lowCover1().

G4double PartProduce::lowCover1_posz [private]

Definition at line 83 of file PartProduce.hh.

Referenced by IniParam(), and lg_container().

G4double PartProduce::lowCover1_xdown [private]

Definition at line 77 of file PartProduce.hh.

Referenced by IniParam(), and sd_lowCover1().

G4double PartProduce::lowCover1_xup [private]

Definition at line 78 of file PartProduce.hh.

Referenced by IniParam(), and sd_lowCover1().

G4double PartProduce::lowCover1_y [private]

Definition at line 79 of file PartProduce.hh.

Referenced by IniParam(), and sd_lowCover1().

G4double PartProduce::lowCover1_z [private]

Definition at line 80 of file PartProduce.hh.

Referenced by IniParam(), lg_container(), and sd_lowCover1().

G4double PartProduce::lowCover2_posz [private]

Definition at line 89 of file PartProduce.hh.

Referenced by IniParam(), and lg_container().

G4double PartProduce::lowCover2_xdown [private]

Definition at line 85 of file PartProduce.hh.

Referenced by IniParam(), and sd_lowCover2().

G4double PartProduce::lowCover2_xup [private]

Definition at line 86 of file PartProduce.hh.

Referenced by IniParam(), and sd_lowCover2().

G4double PartProduce::lowCover2_y [private]

Definition at line 87 of file PartProduce.hh.

Referenced by IniParam(), and sd_lowCover2().

G4double PartProduce::lowCover2_z [private]

Definition at line 88 of file PartProduce.hh.

Referenced by IniParam(), lg_container(), and sd_lowCover2().

G4double PartProduce::mylar_posz [private]

Definition at line 173 of file PartProduce.hh.

Referenced by IniParam().

G4double PartProduce::mylar_xdown [private]

Definition at line 169 of file PartProduce.hh.

Referenced by IniParam(), and lg_mylar().

G4double PartProduce::mylar_xup [private]

Definition at line 170 of file PartProduce.hh.

Referenced by IniParam(), and lg_mylar().

G4double PartProduce::mylar_y [private]

Definition at line 171 of file PartProduce.hh.

Referenced by IniParam(), lg_bareChamber(), and lg_mylar().

G4double PartProduce::mylar_z [private]

Definition at line 172 of file PartProduce.hh.

Referenced by IniParam(), and lg_mylar().

G4double PartProduce::pcbBoard_xdown [private]

Definition at line 157 of file PartProduce.hh.

Referenced by IniParam(), lg_bareChamber(), and lg_pcbBoard().

G4double PartProduce::pcbBoard_xup [private]

Definition at line 158 of file PartProduce.hh.

Referenced by IniParam(), lg_bareChamber(), and lg_pcbBoard().

G4double PartProduce::pcbBoard_y0 [private]

Definition at line 159 of file PartProduce.hh.

Referenced by IniParam(), lg_bareChamber(), and lg_pcbBoard().

G4double PartProduce::pcbBoard_y1 [private]

Definition at line 160 of file PartProduce.hh.

Referenced by IniParam(), lg_bareChamber(), and lg_pcbBoard().

G4double PartProduce::pcbBoard_z [private]

Definition at line 161 of file PartProduce.hh.

Referenced by IniParam(), lg_bareChamber(), and lg_pcbBoard().

G4double PartProduce::sideFEE_pcb_x [private]

Definition at line 108 of file PartProduce.hh.

Referenced by IniParam(), and lg_sideFEE_pcb().

G4double PartProduce::sideFEE_pcb_y [private]

Definition at line 109 of file PartProduce.hh.

Referenced by IniParam(), and lg_sideFEE_pcb().

G4double PartProduce::sideFEE_pcb_z [private]

Definition at line 110 of file PartProduce.hh.

Referenced by IniParam(), and lg_sideFEE_pcb().

G4double PartProduce::sideFEE_posl [private]

Definition at line 106 of file PartProduce.hh.

Referenced by IniParam(), and lg_container().

G4double PartProduce::sideFEE_x [private]

Definition at line 103 of file PartProduce.hh.

Referenced by IniParam(), lg_container(), lg_sideFEE(), and sd_sideFEE().

G4double PartProduce::sideFEE_y [private]

Definition at line 104 of file PartProduce.hh.

Referenced by IniParam(), lg_sideFEE(), and sd_sideFEE().

G4double PartProduce::sideFEE_z [private]

Definition at line 105 of file PartProduce.hh.

Referenced by IniParam(), lg_sideFEE(), and sd_sideFEE().

G4double PartProduce::sideStopBlock_posz0 [private]

Definition at line 141 of file PartProduce.hh.

Referenced by IniParam().

G4double PartProduce::sideStopBlock_posz1 [private]

Definition at line 142 of file PartProduce.hh.

Referenced by IniParam().

G4double PartProduce::sideStopBlock_thickness [private]

Definition at line 140 of file PartProduce.hh.

Referenced by IniParam(), and lg_sideStopBlock().

G4double PartProduce::sideStopBlock_x [private]

Definition at line 137 of file PartProduce.hh.

Referenced by IniParam(), and lg_sideStopBlock().

G4double PartProduce::sideStopBlock_y [private]

Definition at line 138 of file PartProduce.hh.

Referenced by IniParam(), and lg_sideStopBlock().

G4double PartProduce::sideStopBlock_z [private]

Definition at line 139 of file PartProduce.hh.

Referenced by IniParam(), and lg_sideStopBlock().

G4double PartProduce::startAngle_east [private]

Definition at line 196 of file PartProduce.hh.

Referenced by IniParam().

G4double PartProduce::startAngle_west [private]

Definition at line 197 of file PartProduce.hh.

Referenced by IniParam().

G4double PartProduce::strip_gap [private]

Definition at line 166 of file PartProduce.hh.

Referenced by IniParam(), and lg_strip().

G4double PartProduce::strip_posz [private]

Definition at line 167 of file PartProduce.hh.

Referenced by IniParam().

G4double PartProduce::strip_x[12] [private]

Definition at line 163 of file PartProduce.hh.

Referenced by IniParam(), and lg_strip().

G4double PartProduce::strip_y [private]

Definition at line 164 of file PartProduce.hh.

Referenced by IniParam(), and lg_strip().

G4double PartProduce::strip_z [private]

Definition at line 165 of file PartProduce.hh.

Referenced by IniParam(), and lg_strip().

G4double PartProduce::tape_mrpc_posz [private]

Definition at line 155 of file PartProduce.hh.

Referenced by IniParam().

G4double PartProduce::tape_mrpc_xdown [private]

Definition at line 151 of file PartProduce.hh.

Referenced by IniParam(), and lg_tape_mrpc().

G4double PartProduce::tape_mrpc_xup [private]

Definition at line 152 of file PartProduce.hh.

Referenced by IniParam(), and lg_tape_mrpc().

G4double PartProduce::tape_mrpc_y [private]

Definition at line 153 of file PartProduce.hh.

Referenced by IniParam(), lg_bareChamber(), and lg_tape_mrpc().

G4double PartProduce::tape_mrpc_z [private]

Definition at line 154 of file PartProduce.hh.

Referenced by IniParam(), and lg_tape_mrpc().

BesTofGeoParameter* PartProduce::tofPara [private]

Definition at line 57 of file PartProduce.hh.

Referenced by IniParam().

G4double PartProduce::upCover_posz [private]

Definition at line 75 of file PartProduce.hh.

Referenced by IniParam(), and lg_container().

G4double PartProduce::upCover_xdown [private]

Definition at line 71 of file PartProduce.hh.

Referenced by IniParam(), and sd_upCover().

G4double PartProduce::upCover_xup [private]

Definition at line 72 of file PartProduce.hh.

Referenced by IniParam(), and sd_upCover().

G4double PartProduce::upCover_y [private]

Definition at line 73 of file PartProduce.hh.

Referenced by IniParam(), lg_container(), and sd_upCover().

G4double PartProduce::upCover_z [private]

Definition at line 74 of file PartProduce.hh.

Referenced by IniParam(), lg_container(), and sd_upCover().

G4double PartProduce::upFEE_pcb_xdown [private]

Definition at line 98 of file PartProduce.hh.

Referenced by IniParam(), and lg_upFEE_pcb().

G4double PartProduce::upFEE_pcb_xup [private]

Definition at line 99 of file PartProduce.hh.

Referenced by IniParam(), and lg_upFEE_pcb().

G4double PartProduce::upFEE_pcb_y [private]

Definition at line 100 of file PartProduce.hh.

Referenced by IniParam(), and lg_upFEE_pcb().

G4double PartProduce::upFEE_pcb_z [private]

Definition at line 101 of file PartProduce.hh.

Referenced by IniParam(), and lg_upFEE_pcb().

G4double PartProduce::upFEE_posz [private]

Definition at line 96 of file PartProduce.hh.

Referenced by IniParam(), and lg_container().

G4double PartProduce::upFEE_xdown [private]

Definition at line 91 of file PartProduce.hh.

Referenced by IniParam(), lg_upFEE(), and sd_upFEE().

G4double PartProduce::upFEE_xup [private]

Definition at line 92 of file PartProduce.hh.

Referenced by IniParam(), lg_upFEE(), and sd_upFEE().

G4double PartProduce::upFEE_y [private]

Definition at line 93 of file PartProduce.hh.

Referenced by IniParam(), lg_container(), lg_upFEE(), and sd_upFEE().

G4double PartProduce::upFEE_z [private]

Definition at line 94 of file PartProduce.hh.

Referenced by IniParam(), lg_container(), lg_upFEE(), and sd_upFEE().

G4double PartProduce::upStopBlock_subtractposz [private]

Definition at line 135 of file PartProduce.hh.

Referenced by IniParam(), and lg_upStopBlock().

G4double PartProduce::upStopBlock_subtractr [private]

Definition at line 134 of file PartProduce.hh.

Referenced by IniParam(), and lg_upStopBlock().

G4double PartProduce::upStopBlock_x [private]

Definition at line 131 of file PartProduce.hh.

Referenced by IniParam(), and lg_upStopBlock().

G4double PartProduce::upStopBlock_y [private]

Definition at line 132 of file PartProduce.hh.

Referenced by IniParam(), and lg_upStopBlock().

G4double PartProduce::upStopBlock_z [private]

Definition at line 133 of file PartProduce.hh.

Referenced by IniParam(), and lg_upStopBlock().


Generated on Tue Nov 29 23:20:39 2016 for BOSS_7.0.2 by  doxygen 1.4.7