FairRoot/PandaRoot
Functions | Variables
hypGeGeantCableAbsorptionTest.C File Reference
#include "TGeoManager.h"

Go to the source code of this file.

Functions

int hypGeCableAbsorptionTest (Double_t FoilThickness_Ext=2)
 

Variables

double Pi = TMath::Pi()
 

Function Documentation

int hypGeCableAbsorptionTest ( Double_t  FoilThickness_Ext = 2)

Definition at line 5 of file hypGeGeantCableAbsorptionTest.C.

References Double_t, fi, geobuild, geoFace, geoLoad, geom(), gGeoManager, Media, outfile, top, and TString.

6 {
7 
8  gROOT->Macro("$VMCWORKDIR/gconfig/rootlogon.C");
9 
10  // Load this libraries
11  gSystem->Load("libGeoBase");
12  gSystem->Load("libParBase");
13  gSystem->Load("libBase");
14  gSystem->Load("libPndData");
15  gSystem->Load("libPassive");
16  gSystem->Load("libHypGe");
17 
18  TString outfile= "../../../../geometry/hypGeGeoCableAbsorptionTest_";
19  outfile += FoilThickness_Ext;
20  outfile += "cm.root";
21  cout << outfile << endl;
22 
23  TFile* fi = new TFile(outfile,"RECREATE");
24 
25  FairGeoLoader* geoLoad = new FairGeoLoader("TGeo","FairGeoLoader");
26  FairGeoInterface *geoFace = geoLoad->getGeoInterface();
27  geoFace->setMediaFile("../../../../geometry/media_pnd.geo");
28  geoFace->readMedia();
29  //geoFace->print();
30 
31  FairGeoMedia *Media = geoFace->getMedia();
32  FairGeoBuilder *geobuild=geoLoad->getGeoBuilder();
33 
34  FairGeoMedium *medGe = Media->getMedium("germanium");
35  Int_t nmedGe=geobuild->createMedium(medGe);
36 
37 
38  FairGeoMedium *medcap = Media->getMedium("HYPaluminium");
39  Int_t nmedcap=geobuild->createMedium(medcap);
40 
41  FairGeoMedium *medkapton = Media->getMedium("kapton");
42  Int_t nmedcap=geobuild->createMedium(medkapton);
43 
44 
45  TGeoMedium *Ge = gGeoManager->GetMedium("germanium");
46 
47  TGeoMedium *Al = gGeoManager->GetMedium("HYPaluminium");
48 
49  TGeoMedium *Kapton = gGeoManager->GetMedium("kapton")
50 
51  TGeoManager *geom = (TGeoManager*)gROOT->FindObject("FAIRGeom");
52  TGeoVolume *top = new TGeoVolumeAssembly("hpGe");
53  TGeoVolume *Realtop = new TGeoVolumeAssembly("Realtop");
54 
55 //cout<<" geom "<<geom<<endl;
56  geom->SetTopVolume(top);
57 
58 
59  Double_t FoilThickness = FoilThickness_Ext;
60  TGeoVolume* Foil = geom->MakeBox("Foil",Kapton,10,10,FoilThickness/2);
61 
62  Realtop->AddNode(Foil,1,new TGeoTranslation(0,0,-60));
63 
64  top->AddNode(Realtop,0);
65  geom->CloseGeometry();
66  cout << "# of Nodes: " << Realtop->CountNodes(10,1) << endl;
67 
68  top->Write();
69  fi->Close();
70 
71  //Realtop->Browse(new TBrowser);
72  //c1 = new TCanvas("c1","hypGe",800,600);Realtop->Draw("");// Realtop->Raytrace();
73  Realtop->Draw("ogl");
74 
75 
76  //c1->x3d();
77  //geom->CheckOverlaps(0.0000000001,option="d"); //1 Overlap von Strahlrohr + Kugel ist normal!!!!!!!!!!!!!!!!!
78  //geom->PrintOverlaps();
79 
80 
81  return 0;
82 }
FairGeoLoader * geoLoad
FairGeoMedia * Media
TGeoManager * gGeoManager
TGeoVolume * top
FairGeoBuilder * geobuild
TFile * fi
Double_t
FairGeoInterface * geoFace
TString outfile

Variable Documentation

double Pi = TMath::Pi()

Definition at line 2 of file hypGeGeantCableAbsorptionTest.C.