#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 * //* nforce = number of the region of forced interaction * //* xfor = x-coord. of the starting point of the region nforce * //* yfor = y-coord. of the starting point of the region nforce * //* zfor = z-coord. of the starting point of the region nforce * //* disfor = thickness of the region nforce in cm * //* wfor = relative weight of the particle due to forcing * //* ijbeam = beam particle type (see btype in /paprop/) * //* ijhion = heavy ion type if ijbeam = -2 * //* ipbite = flag describing the shape of the momentum * //* distribution of the beam * //* 0=rectangular, 1=gaussian * //* idiv = flag describing the shape of the angular * //* divergence distribution of the beam * //* 0=rectangular, 1=gaussian * //* ixspot = flag describing the shape of the spatial * //* distribution of the beam spot in x-direction * //* 0=rectangular, 1=gaussian * //* iyspot = flag describing the shape of the spatial * //* distribution of the beam spot in y-direction * //* 0=rectangular, 1=gaussian * //* 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 * //* * //*----------------------------------------------------------------------* // LOGICAL LBEAMC, LPPERP, LPFRAC 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 xfor; Double_t yfor; Double_t zfor; Double_t disfor; Double_t wfor; Int_t ijbeam; Int_t ijhion; Int_t ipbite; Int_t idiv; Int_t ixspot; Int_t iyspot; Int_t nforce; Int_t lbeamc; Int_t lpperp; Int_t lpfrac; } beamCommon; #define BEAM COMMON_BLOCK(BEAM,beam) COMMON_BLOCK_DEF(beamCommon,BEAM); } #endif