Geant4_10
rztog4.F
Go to the documentation of this file.
1 *
2 * ********************************************************************
3 * * License and Disclaimer *
4 * * *
5 * * The Geant4 software is copyright of the Copyright Holders of *
6 * * the Geant4 Collaboration. It is provided under the terms and *
7 * * conditions of the Geant4 Software License, included in the file *
8 * * LICENSE and available at http://cern.ch/geant4/license . These *
9 * * include a list of copyright holders. *
10 * * *
11 * * Neither the authors of this software system, nor their employing *
12 * * institutes,nor the agencies providing financial support for this *
13 * * work make any representation or warranty, express or implied, *
14 * * regarding this software system or assume any liability for its *
15 * * use. Please see the license in the file LICENSE and URL above *
16 * * for the full disclaimer and the limitation of liability. *
17 * * *
18 * * This code implementation is the result of the scientific and *
19 * * technical work of the GEANT4 collaboration. *
20 * * By using, copying, modifying or distributing the software (or *
21 * * any work based on the software) you agree to acknowledge its *
22 * * use in resulting scientific publications, and indicate your *
23 * * acceptance of all terms of the Geant4 Software license. *
24 * ********************************************************************
25 *
26 *
27 * $Id: rztog4.F 67982 2013-03-13 10:36:03Z gcosmo $
28 *
29  program rztog4
30 ************************************************************************
31 *
32 * rztog4
33 *
34 * A standalone program to convert a Geant RZ initialization file
35 * (containing geometry, materials, etc.) to a Geant4 C++
36 * geometry.
37 *
38 * Torre Wenaus, LLNL 6/95
39 *
40 * todo:
41 * - attributes
42 *
43 * JSHAPE routine of Jouko Vuoskoski, CERN employed.
44 *
45 *... History:
46 * 15-Jan-1997 Lockman : put tog4 in a separate file
47 ************************************************************************
48  implicit none
49 #include "G3toG4.inc"
50  integer iargc, lenocc, ln, lnout
51  character*256 file, ofile
52 *
53  real h, q
54  integer nh, nz
55  parameter(nh=1000000, nz=2000000)
56  common/pawc/h(nh)
57  common/gcbank/q(nz)
58 C
59  common/gcunit/lin,lout,nunits,lunits(5)
60  INTEGER lin,lout,nunits,lunits
61  common/gcmail/chmail
62  CHARACTER*132 chmail
63  logical lexist
64 *
65  lout = 6
66 *
67  if( iargc() .gt. 0 ) then
68  call getarg(1,file)
69  ln = lenocc(file)
70  else
71  print *,'rztog4 <rzfile> [ <call-list> ]'
72  print *,'<rzfile> : name of the ZEBRA rz file'
73  print *,'<call-list> : name of output call list file'
74  print *,'(def: g3calls.dat)'
75  print *,'You need to specify an rz file'
76  goto 999
77  endif
78 
79  if (iargc() .gt. 1 ) then
80  call getarg(2,ofile)
81  else
82  ofile='g3calls.dat'
83  end if
84  inquire(file=file(:ln),exist=lexist)
85  if (.not.lexist) then
86  write(6,*) 'rz-file "',file(:ln),'" doesn''t exist.'
87  stop 1
88  end if
89 *
90 *** Geant/Zebra initialization
91  call gzebra(nz)
92  call gzinit
93  call grfile(90,file(:ln),'i')
94 *
95 *** conversion initialization
96  dogeom = .false.
97  context = '----'
98  lunlist = 98
99  lnout = lenocc(ofile)
100  open(unit=lunlist,file=ofile(:lnout),status='unknown')
101  print *,'Opened call list file ',ofile(:lnout)
102 *
103  luncode = 99
104  luncode = 0
105  nfile = 1
106  call g3source
107 *
108 *** do conversion
109  call tog4
110 *
111  999 end
112 
BasicVector3D< T > unit() const
TFile * file
const XML_Char * context
Definition: expat.h:434
int status
Definition: tracer.cxx:24
std::ofstream ofile
Definition: clparse.cc:45
subroutine g3source
Definition: g3tog4.F:147
subroutine tog4
Definition: tog4.F:29
void print(const std::vector< T > &data)
Definition: DicomRun.hh:111