I want to create geometry of a hollow box and want to keep my dosimeter in that box. I am a beginner to Geant4. Which application will be suitable for calculation of dose inside the hollow box?
This question about GEANT4 (GEometry ANd Tracking 4) is a good question with a number of possible paths to follow in looking for an answer.
The interaction of X-rays with matter and Dosimetry are explained in detail in
A. Harding, Feasibility study of fan-beam coherent scatter computed tomography, Ph.D. thesis, University of Surrey, UK, 2004:
http://epubs.surrey.ac.uk/922/1/fulltext.pdf
Results of simulations with the ideal system are reported Section 5.2, starting on page 85. Dosimetry is explained in Appendix A, starting page 124.
Detector geometry description basics are given in Section II in
R. Chytacek, J. McCormick, W. Pokorski, G. Santin, Geometry description markup language for physics simulation and analysis applications, Stanford University, 2007:
To make the hollow box just create a larger and a smaller box and subtract the smaller from the larger one. The following code fragment shows the details:
G4Box *outerBox = new G4Box("Outer Box",boxX/2.,boxY/2.,boxZ/2.);
G4Box *innerBox = new G4Box("Inner Box",(boxX-boxThickness)/2.,(boxY-boxThickness)/2.,(boxZ-boxThickness)/2.);
G4SubtractionSolid *hollowBox = new G4SubtractionSolid("Hollow Box",outerBox,innerBox);
Then place your dosemeter (e.g. a box filled with water) inside the hollow box. But there ain't no such thing as an "application" in Geant.
You may not even need as complex a solution as Patrik's, it depends what you want the box for. If it's intrinsic to the solution, e.g. you're interested in shielding or reflected radiation you'll need something like that, but if it's just to define a boundary create a single box and declare it as vacuum.
Although as far as I'm aware G4 can't do a true vacuum but if you declare density as 0 in the code then it sets it to the lowest allowed value at run time.
Simon, you're right. If it's just a volume definition that is required (e.g. as a sensitive detector) a plain box is just fine.
However: Dosimetry is not about principles, it's about all tiny details. If the volume is in your lab, then it's filled with air of a specific density. If it's in space, it's G4_Galactic (there ain't no such thing as density zero or empty space anywhere in the Universe).
So I usually take the naive approach, model my experiement 1:1 and then simplify until things start to change..
The code fragement was exactly this: a snipet of code without the context necessary to run it in an actual program.
GEANT is a library with highly sophisticated, but very basic functionality. There are a lot of more complete examples in the programmes guide and of course in the examples section of the source code.
Or then you may consider using GATE, that is based on GEANT 4 but programmed in macros.