beam replaced by beamcm
authormorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 1 Sep 2005 13:38:22 +0000 (13:38 +0000)
committermorsch <morsch@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 1 Sep 2005 13:38:22 +0000 (13:38 +0000)
TFluka/Fbeam.h [deleted file]
TFluka/Fbeamcm.h [new file with mode: 0644]

diff --git a/TFluka/Fbeam.h b/TFluka/Fbeam.h
deleted file mode 100644 (file)
index fe94ae1..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-#ifndef FBEAM_H
-#define FBEAM_H 1
-
-#include "cfortran.h"
-#include "Rtypes.h"
-extern "C" {
-//*$ create beam.add
-//*copy beam
-//*
-//*=== beam =============================================================*
-//*
-//*----------------------------------------------------------------------*
-//*     include file: beam copy                    created 26/11/86 by pa*
-//*                                                                      *
-//*     changes: on 22-oct-1993     by             alfredo ferrari       *
-//*                                                                      *
-//*     included in the following subroutines or functions: not updated  *
-//*                                                                      *
-//*     description of the common block(s) and variable(s)               *
-//*                                                                      *
-//*                                                                      *
-//*     /beam/ contains properties of the beam of primary particles      *
-//*        pbeam  = average momentum of the beam particles in gev/c      *
-//*        dpbeam = momentum spread of the beam in gev/c                 *
-//*        divbm  = angular divergense of the beam in mrad               *
-//*        xspot  = beam width in x-direction in cm                      *
-//*        yspot  = beam width in y-direction in cm                      *
-//*        xina   = x-coordinate of the centre of the beam spot          *
-//*        yina   = y-coordinate of the centre of the beam spot          *
-//*        zina   = z-coordinate of the centre of the beam spot          *
-//*        tinx   = direction cosine of the beam with respect to         *
-//*                 x-axis                                               *
-//*        tiny   = direction cosine of the beam with respect to         *
-//*                 y-axis                                               *
-//*        tinz   = direction cosine of the beam with respect to         *
-//*                 z-axis                                               *
-//*        tinpx  = direction cosine of the beam polariz. with respect to*
-//*                 x-axis                                               *
-//*        tinpy  = direction cosine of the beam polariz. with respect to*
-//*                 y-axis                                               *
-//*        tinpz  = direction cosine of the beam polariz. with respect to*
-//*                 z-axis                                               *
-//*        polfra = polarization fraction                                *
-//*        beawei = weight of the beam particles                         *
-//*      bmaxis(j,i) = j_th component of the i_th axis used to define the*
-//*                 conventional x,y,z beam reference frame              *
-//*!!!!! ATTENTION: in C++ it is the component bmaxis(i,j) !!!!!         *
-//*        ijbeam = beam particle type (see btype in /paprop/)           *
-//*        ijhion = heavy ion type if ijbeam = -2                        *
-//*        ldpgss = true for a gaussian momentum distribution of the     *
-//*                 beam particles, false for a rectangular one          *
-//*        ldvgss = true for a gaussian angular divergence distribution  *
-//*                 of the beam particles, false for a rectangular one   *
-//*        ldxgss = true for a gaussian spatial distribution of the beam *
-//*                 spot in the x-direction, false for a rectangular one *
-//*        ldygss = true for a gaussian spatial distribution of the beam *
-//*                 spot in the y-direction, false for a rectangular one *
-//*        lbeamc = flag for an annular beam                             *
-//*        lpperp = flag for polar. perp. to the beam direction          *
-//*        lpfrac = flag for interpreting the polar. fraction
-//*        lbaxis = logical flag for using a beam axis frame different   *
-//*                 from the standard one                                *
-//*                                                                      *
-//*----------------------------------------------------------------------*
-//      LBEAMC, LPPERP, LPFRAC, LDPGSS, LDVGSS, LDXGSS, LDYGSS,
-//     &        LBAXIS
-
-typedef struct {
-   Double_t pbeam;
-   Double_t dpbeam;
-   Double_t divbm;
-   Double_t xspot;
-   Double_t yspot;
-   Double_t xina;
-   Double_t yina;
-   Double_t zina;
-   Double_t tinx;
-   Double_t tiny;
-   Double_t tinz;
-   Double_t tinpx;
-   Double_t tinpy;
-   Double_t tinpz;
-   Double_t polfra;
-   Double_t beawei;
-   Double_t bmaxis[3][3];
-   Int_t    ijbeam;
-   Int_t    ijhion;
-   Int_t    ldpgss;
-   Int_t    ldvgss;
-   Int_t    ldxgss;
-   Int_t    ldygss;
-   Int_t    lbeamc;
-   Int_t    lpperp;
-   Int_t    lpfrac;
-   Int_t    lbaxis;
-} beamCommon;
-#define BEAM COMMON_BLOCK(BEAM,beam)
-COMMON_BLOCK_DEF(beamCommon,BEAM);
-}
-
-#endif
diff --git a/TFluka/Fbeamcm.h b/TFluka/Fbeamcm.h
new file mode 100644 (file)
index 0000000..e7d891d
--- /dev/null
@@ -0,0 +1,126 @@
+#ifndef FBEAMCM_H
+#define FBEAMCM_H 1
+
+#include "cfortran.h"
+#include "Rtypes.h"
+extern "C" {
+
+//*=== beam =============================================================*
+//*
+//*----------------------------------------------------------------------*
+//*                                                                      *
+//*     CoMmon for BEAM properties:                                      *
+//*                                                                      *
+//*        Pbeam  = average beam particle momentum (GeV/c)               *
+//*        Pbmmax = maximum momentum for which tabulations must be       *
+//*                 generated (GeV/c)                                    *
+//*        Dpbeam = beam momentum spread (GeV/c)                         *
+//*        Divbm  = beam angular divergense (mrad)                       *
+//*        Xspot  = beam width in (beam frame) x-direction (cm)          *
+//*        Yspot  = beam width in (beam frame) y-direction (cm)          *
+//*        Xbeam  = beam spot centre (geom frame) x-coordinate (cm)      *
+//*        Ybeam  = beam spot centre (geom frame) y-coordinate (cm)      *
+//*        Zbeam  = beam spot centre (geom frame) z-coordinate (cm)      *
+//*        Ubeam  = beam direction cosine wrt the (beam frame) x-axis    *
+//*        Vbeam  = beam direction cosine wrt the (beam frame) y-axis    *
+//*        Wbeam  = beam direction cosine wrt the (beam frame) z-axis    *
+//*        Ubmpol = beam polarization cosine wrt the (beam frame) x-axis *
+//*        Vbmpol = beam polarization cosine wrt the (beam frame) y-axis *
+//*        Wbmpol = beam polarization cosine wrt the (beam frame) z-axis *
+//*        Polfra = polarization fraction                                *
+//*        Rflood = emission radius for a uniform and isotropic source   *
+//*                 or maximum radius for a cylindrical/spherical volume *
+//*                 source                                               *
+//*        Rvlmax = emission radius for a uniform and isotropic source   *
+//*                 or maximum radius for a cylindrical/spherical volume *
+//*                 source                                               *
+//*        Rvlmin = minimum radius for a cylindrical/spherical volume    *
+//*                 source                                               *
+//*        Dxvlmx = maximum Dx for a cartesian volume source             *
+//*                (particle emitted inside [Xina+Dxvlmn/2,Xina+Dxvlmx/2]*
+//*                 and inside [Xina-Dxvlmx/2, Xina-Dxvlmn/2])           *
+//*        Dxvlmn = minimum Dx for a cartesian volume source             *
+//*        Dyvlmx = maximum Dy for a cartesian volume source             *
+//*                (particle emitted inside [Yina+Dyvlmn/2,Yina+Dyvlmx/2]*
+//*                 and inside [Yina-Dyvlmx/2, Yina-Dyvlmn/2])           *
+//*        Dyvlmn = minimum Dy for a cartesian volume source             *
+//*        Dzvlmx = maximum Dz for a cartesian/cylindrical volume source *
+//*                (particle emitted inside [Zina+Dzvlmn/2,Zina+Dzvlmx/2]*
+//*                 and inside [Zina-Dzvlmx/2, Zina-Dzvlmn/2])           *
+//*        Dzvlmn = minimum Dz for a cartesian/cylindrical volume source *
+//*        Ijbeam = beam particle type (see btype in /paprop/)           *
+//*        Ijhion = heavy ion type if ijbeam = -2                        *
+//*        Ldpgss = true for a gaussian momentum distribution of the     *
+//*                 beam particles, false for a rectangular one          *
+//*        Ldvgss = true for a gaussian angular divergence distribution  *
+//*                 of the beam particles, false for a rectangular one   *
+//*        Ldxgss = true for a gaussian spatial distribution of the beam *
+//*                 spot in the x-direction, false for a rectangular one *
+//*        Ldygss = true for a gaussian spatial distribution of the beam *
+//*                 spot in the y-direction, false for a rectangular one *
+//*        Beawei = weight of the beam particles                         *
+//*        Lbeamc = flag for an annular beam                             *
+//*        Lpperp = flag for polar. perp. to the beam direction          *
+//*        Lpfrac = flag for interpreting the polar. fraction            *
+//*   Bmaxis(j,i) = j_th component of the i_th axis used to define the   *
+//*                 conventional x,y,z beam reference frame              *
+//*!!!!! ATTENTION: in C++ it is the component bmaxis(i,j) !!!!!         *
+//*        Lbaxis = logical flag for using a beam axis frame different   *
+//*                 from the standard one                                *
+//*        Lflood = logical flag for using a uniform and isotropic beam  *
+//*                 source out of a sphere of radius Rflood              *
+//*        Lvlcar = logical flag for using a cartesian   volume source   *
+//*        Lvlcyl = logical flag for using a cylindrical volume source   *
+//*        Lvlsph = logical flag for using a spherical   volume source   *
+//*                                                                      *
+//*----------------------------------------------------------------------*
+
+typedef struct {
+   Double_t pbeam;
+   Double_t dpbeam;
+   Double_t pbmmax;
+   Double_t divbm;
+   Double_t xspot;
+   Double_t yspot;
+   Double_t xbeam;
+   Double_t ybeam;
+   Double_t zbeam;
+   Double_t ubeam;
+   Double_t vbeam;
+   Double_t wbeam;
+   Double_t ubmpol;
+   Double_t vbmpol;
+   Double_t wbmpol;
+   Double_t polfra;
+   Double_t beawei;
+   Double_t bmaxis[3][3];
+   Double_t rvlmin;
+   Double_t rvlmax;
+   Double_t dxvlmn;
+   Double_t dxvlmx;
+   Double_t dyvlmn;
+   Double_t dyvlmx;
+   Double_t dzvlmn;
+   Double_t dzvlmx;
+   Int_t    ijbeam;
+   Int_t    ijhion;
+   Int_t    ldpgss;
+   Int_t    ldvgss;
+   Int_t    ldxgss;
+   Int_t    ldygss;
+   Int_t    lbeamc;
+   Int_t    lpperp;
+   Int_t    lpfrac;
+   Int_t    lbaxis;
+   Int_t    lflood;
+   Int_t    lvlcar;
+   Int_t    lvlcyl;
+   Int_t    lvlsph;
+    Int_t   lsourc;
+    
+} beamcmCommon;
+#define BEAMCM COMMON_BLOCK(BEAMCM,beamcm)
+COMMON_BLOCK_DEF(beamcmCommon,BEAMCM);
+}
+
+#endif