734 lines
19 KiB
C++
Executable File
734 lines
19 KiB
C++
Executable File
//
|
|
// ********************************************************************
|
|
// * License and Disclaimer *
|
|
// * *
|
|
// * The Geant4 software is copyright of the Copyright Holders of *
|
|
// * the Geant4 Collaboration. It is provided under the terms and *
|
|
// * conditions of the Geant4 Software License, included in the file *
|
|
// * LICENSE and available at http://cern.ch/geant4/license . These *
|
|
// * include a list of copyright holders. *
|
|
// * *
|
|
// * Neither the authors of this software system, nor their employing *
|
|
// * institutes,nor the agencies providing financial support for this *
|
|
// * work make any representation or warranty, express or implied, *
|
|
// * regarding this software system or assume any liability for its *
|
|
// * use. Please see the license in the file LICENSE and URL above *
|
|
// * for the full disclaimer and the limitation of liability. *
|
|
// * *
|
|
// * This code implementation is the result of the scientific and *
|
|
// * technical work of the GEANT4 collaboration. *
|
|
// * *
|
|
// * Parts of this code which have been developed by Abdel-Waged *
|
|
// * et al under contract (31-465) to the King Abdul-Aziz City for *
|
|
// * Science and Technology (KACST), the National Centre of *
|
|
// * Mathematics and Physics (NCMP), Saudi Arabia. *
|
|
// * *
|
|
// * By using, copying, modifying or distributing the software (or *
|
|
// * any work based on the software) you agree to acknowledge its *
|
|
// * use in resulting scientific publications, and indicate your *
|
|
// * acceptance of all terms of the Geant4 Software license. *
|
|
// ********************************************************************
|
|
//
|
|
/// \file hadronic/Hadr02/include/G4UrQMD1_3Interface.hh
|
|
/// \brief Definition of the G4UrQMD1_3Interface class
|
|
//
|
|
// $Id: G4UrQMD1_3Interface.hh 77519 2013-11-25 10:54:57Z gcosmo $
|
|
//
|
|
|
|
#ifndef G4UrQMD1_3Interface_hh
|
|
#define G4UrQMD1_3Interface_hh
|
|
|
|
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
//
|
|
// MODULE: G4UrQMD1_3Model.hh
|
|
//
|
|
// Version: 0.B
|
|
// Date: 20/12/12
|
|
// Author: Kh. Abdel-Waged and Nuha Felemban
|
|
// Revised by: V.V. Uzhinskii
|
|
// SPONSERED BY
|
|
// Customer: KAUST/NCMP
|
|
// Contract: 31-465
|
|
//
|
|
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
//
|
|
//
|
|
// Class Description
|
|
//
|
|
//
|
|
// Class Description - End
|
|
//
|
|
// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
|
|
///////////////////////////////////////////////////////////////////////////////
|
|
|
|
#include "globals.hh"
|
|
#include "G4SystemOfUnits.hh"
|
|
|
|
// coms
|
|
//
|
|
const G4int nmax = 500;
|
|
const G4int nspl = 500;
|
|
const G4int smax = 500;
|
|
// comres
|
|
const G4int minnuc=1;
|
|
const G4int minmes=100;
|
|
const G4int maxmes=132;
|
|
const G4int numnuc=16;
|
|
const G4int numdel=10;
|
|
const G4int maxnuc=minnuc+numnuc-1;
|
|
const G4int mindel=minnuc+maxnuc;
|
|
const G4int maxdel=mindel+numdel-1;
|
|
const G4int minres=minnuc+1;
|
|
const G4int maxres=maxdel;
|
|
const G4int numlam=13;
|
|
const G4int numsig=9;
|
|
const G4int numcas=6;
|
|
const G4int numome=1;
|
|
const G4int minlam=mindel+numdel;
|
|
const G4int maxlam=minlam+numlam-1;
|
|
const G4int minsig=minlam+numlam;
|
|
const G4int maxsig=minsig+numsig-1;
|
|
const G4int mincas=minsig+numsig;
|
|
const G4int maxcas=mincas+numcas-1;
|
|
const G4int minome=mincas+numcas;
|
|
const G4int maxome=minome+numome-1;
|
|
const G4int minbar=minnuc;
|
|
const G4int maxbar=maxome;
|
|
const G4int offmeson=minmes;
|
|
const G4int maxmeson=maxmes;
|
|
const G4int maxbra=11;
|
|
const G4int maxbrm=25;
|
|
const G4int maxbrs1=10;
|
|
const G4int maxbrs2=3;
|
|
const G4int nsigs = 10;
|
|
const G4int itblsz= 100;
|
|
const G4int maxreac = 13;
|
|
const G4int maxpsig = 12;
|
|
//
|
|
//comwid
|
|
//
|
|
const G4int widnsp=120;
|
|
const G4double mintab=0.10;
|
|
const G4double maxtab1=5.0;
|
|
const G4double maxtab2=50.0;
|
|
const G4int tabver=9;
|
|
//
|
|
// options
|
|
//
|
|
const G4int numcto=400;
|
|
const G4int numctp=400;
|
|
const G4int maxstables=20;
|
|
//
|
|
// colltab (collision tables)
|
|
//
|
|
const G4int ncollmax = 100;
|
|
//
|
|
// inputs
|
|
//
|
|
const G4int aamax=300;
|
|
//
|
|
// newpart (new created particles)
|
|
//
|
|
const G4int mprt=200;
|
|
const G4int oprt=2;
|
|
//
|
|
// boxinc
|
|
//
|
|
const G4int bptmax=20;
|
|
//
|
|
|
|
// This next line is required as the default version of FORTRAN LOGICAL is
|
|
// four bytes long, whereas storage for G4bool is one byte.
|
|
//
|
|
// comnorm
|
|
const G4int n = 400;
|
|
//
|
|
// comstr
|
|
const G4int njspin=8;
|
|
//
|
|
//iso
|
|
const G4int jmax=7;
|
|
|
|
// This next line is required as the default version of FORTRAN LOGICAL is
|
|
// four bytes long, whereas storage for G4bool is one byte.
|
|
//
|
|
|
|
typedef G4int ftnlogical;
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
//
|
|
// Standard common block for UrQMD
|
|
// Common options for coms.f
|
|
// 20 commons
|
|
//
|
|
//
|
|
struct ccurqmd13urqmdparams
|
|
{
|
|
G4int u_at,u_zt,u_ap,u_zp;
|
|
G4double u_elab,u_imp;
|
|
G4int u_sptar,u_spproj;
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13sys
|
|
{
|
|
G4int npart, nbar, nmes, ctag,nsteps,uid_cnt,
|
|
ranseed,event,ap,at,zp,zt,eos,dectag,
|
|
nhardres, nsoftres, ndecres, nelcoll, nblcoll;
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13rsys
|
|
{
|
|
G4double time,acttime,bdist,bimp,bmin,ebeam,ecm;
|
|
};
|
|
|
|
struct ccurqmd13comseed
|
|
{
|
|
ftnlogical firstseed;
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13logic
|
|
{
|
|
ftnlogical lsct[nmax], logSky, logYuk, logCb, logPau;
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13mdprop
|
|
{
|
|
G4double r0_t[nmax], rx_t[nmax], ry_t[nmax], rz_t[nmax];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13cuts
|
|
{
|
|
G4double cutmax, cutPau, cutCb, cutYuk, cutSky, cutdww;
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13spdata
|
|
{
|
|
G4double spx[nspl], spPauy[nspl], outPau[nspl],
|
|
spCby[nspl], outCb[nspl],
|
|
spYuky[nspl], outYuk[nspl],
|
|
spSkyy[nspl], outSky[nspl],
|
|
spdwwy[nspl], outdww[nspl];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13isys
|
|
{
|
|
|
|
G4int spin[nmax],ncoll[nmax],charge[nmax],ityp[nmax],
|
|
lstcoll[nmax],
|
|
iso3[nmax],origin[nmax],strid[nmax],uid[nmax];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13coor
|
|
{
|
|
G4double r0[nmax], rx[nmax], ry[nmax], rz[nmax],
|
|
p0[nmax], px[nmax], py[nmax], pz[nmax],
|
|
fmass[nmax], rww[nmax],dectime[nmax];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13frag
|
|
{
|
|
G4double tform[nmax], xtotfac[nmax];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13aios
|
|
{
|
|
G4double airx[nmax], airy[nmax], airz[nmax],
|
|
aipx[nmax], aipy[nmax], aipz[nmax],
|
|
aorx [4][nmax], aory[4][nmax], aorz[4][nmax],
|
|
aopx[4][nmax], aopy[4][nmax], aopz[4][nmax];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13pots
|
|
{
|
|
G4double Cb0, Yuk0, Pau0, Sky20, Sky30, gamSky,
|
|
gamYuk, drPau, dpPau, gw, sgw, delr, fdel,
|
|
dt,da, db,dtimestep;
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13scoor
|
|
{
|
|
G4double r0s[smax], rxs[smax], rys[smax], rzs[smax],
|
|
p0s[smax], pxs[smax], pys[smax], pzs[smax],
|
|
sfmass[smax];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13sisys
|
|
{
|
|
G4int sspin[smax], scharge[smax], sityp[smax], siso3[smax],
|
|
suid[smax];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13ssys
|
|
{
|
|
G4int nspec;
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13rtdelay
|
|
{
|
|
G4double p0td[nmax][2],pxtd[nmax][2],pytd[nmax][2],pztd[nmax][2],
|
|
fmasstd[nmax][2];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13itdelay
|
|
{
|
|
G4int ityptd[nmax][2],iso3td[nmax][2];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13svinfo
|
|
{
|
|
G4int itypt[2],uidt[2],origint[2],iso3t[2];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13ffermi
|
|
{
|
|
G4double ffermpx[nmax], ffermpy[nmax], ffermpz[nmax];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13peq
|
|
{
|
|
G4double peq1, peq2;
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
//
|
|
// Definition for Collision Term
|
|
// Commons comres
|
|
// 4 commons
|
|
//
|
|
|
|
struct ccurqmd13versioning
|
|
{
|
|
char versiontag[45];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13resonances
|
|
{
|
|
|
|
G4double massres[maxbar-minbar+1],widres[maxbar-minbar+1];
|
|
G4double massmes[maxmes-minmes+1];
|
|
G4double widmes[maxmes-minmes+1];
|
|
G4double mmesmn[maxmes-minmes+1];
|
|
G4double branres[maxdel-minnuc][maxbra+1];
|
|
G4double branmes[maxmes-minmes][maxbrm+1];
|
|
|
|
G4double branbs1[maxsig-minlam][maxbrs1+1];
|
|
G4double branbs2[maxcas-mincas][maxbrs2+1];
|
|
|
|
G4int bs1type[maxbrs1+1][4],bs2type[maxbrs2+1][4];
|
|
G4int lbs1[maxsig-minlam][maxbrs1+1];
|
|
G4int lbs2[maxcas-mincas][maxbrs2+1];
|
|
G4int lbm[maxmes-minmes][maxbrm+1];
|
|
|
|
G4int jres[maxbar-minbar+1];
|
|
G4int jmes[maxmes-minmes+1];
|
|
G4int lbr[maxdel-minnuc][maxbra+1];
|
|
G4int brtype[maxbra+1][4];
|
|
G4int pares[maxbar-minbar+1],pames[maxmes-minmes+1];
|
|
G4int bmtype[maxbrm+1][4];
|
|
G4int isores[maxbar-minbar+1], isomes[maxmes-minmes+1];
|
|
G4int strres[maxbar-minbar+1],strmes[maxmes-minmes+1];
|
|
G4int mlt2it[maxmes-minmes];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13sigtabi
|
|
{
|
|
G4int sigmaln[maxreac][2][maxpsig];
|
|
G4int sigmainf[20][nsigs];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13sigtabr
|
|
{
|
|
G4double sigmas[itblsz][nsigs],sigmascal[5][nsigs];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
//comwid
|
|
struct ccurqmd13decaywidth
|
|
{
|
|
G4double tabx [widnsp];
|
|
G4double fbtaby [2][maxbar-minbar+1][widnsp];
|
|
G4double pbtaby[maxbra+1][maxbar-minbar+1][2][widnsp];
|
|
G4double fmtaby [2][maxmes-minmes+1][widnsp];
|
|
G4double pmtaby [maxbrm+1][maxmes-minmes+1][2][widnsp];
|
|
G4int wtabflg;
|
|
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13brwignorm
|
|
{
|
|
G4double bwbarnorm[maxbar-minbar+1];
|
|
G4double bwmesnorm[maxmes-minmes+1];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13xsections
|
|
{
|
|
G4double tabxnd [widnsp];
|
|
G4double frrtaby[maxdel-1][2][2][widnsp];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13tabnames
|
|
{
|
|
char tabname[77];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
//
|
|
// options
|
|
//
|
|
struct ccurqmd13options
|
|
{
|
|
G4int CTOption[numcto];
|
|
G4double CTParam[numctp];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13optstrings
|
|
{
|
|
char ctodc[numcto][2];
|
|
char ctpdc[numctp][2];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13loptions
|
|
{
|
|
ftnlogical fixedseed,bf13,bf14,bf15,bf16,bf17,bf18,bf19,
|
|
bf20;
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13stables
|
|
{
|
|
G4int nstable;
|
|
G4int stabvec[maxstables];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
//
|
|
//colltab
|
|
//
|
|
struct ccurqmd13colltab
|
|
{
|
|
G4double cttime[ncollmax+1],ctsqrts[ncollmax],
|
|
ctsigtot[ncollmax],tmin;
|
|
G4int cti1[ncollmax],cti2[ncollmax];
|
|
G4int nct,actcol;
|
|
ftnlogical ctvalid[ncollmax];
|
|
G4int ctsav[ncollmax];
|
|
G4int nsav,apt;
|
|
G4double ctcolfluc[ncollmax];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
//
|
|
// inputs
|
|
//
|
|
struct ccurqmd13inputs
|
|
{
|
|
G4int nevents,spityp[2],prspflg;
|
|
G4int trspflg,spiso3[2],outsteps,bflag,srtflag,efuncflag;
|
|
G4int nsrt,firstev,npb;
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13input2
|
|
{
|
|
G4double srtmin,srtmax,pbeam,betann,betatar,betapro;
|
|
G4double pbmin,pbmax;
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13protarints
|
|
{
|
|
G4int pt_iso3[2][aamax],pt_ityp[2][aamax],pt_spin[2][aamax];
|
|
G4int pt_charge[2][aamax],pt_aa[2],pt_uid[2][aamax];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13protarreals
|
|
{
|
|
G4double pt_r0[2][aamax],pt_rx[2][aamax],pt_ry[2][aamax],
|
|
pt_rz[2][aamax],pt_fmass[2][aamax],pt_dectime[2][aamax];
|
|
G4double pt_p0[2][aamax],pt_px[2][aamax],pt_py[2][aamax],
|
|
pt_pz[2][aamax];
|
|
G4double pt_rho[2][aamax];
|
|
G4double pt_pmax[2][aamax];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
// newpart
|
|
struct ccurqmd13inewpart
|
|
{
|
|
G4int itypnew[mprt],i3new[mprt],itot[mprt],inew[mprt],nexit;
|
|
G4int iline,strcount,pslot[oprt],nstring1, nstring2,
|
|
sidnew[mprt],itypold[oprt],iso3old[oprt];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13rnewpart
|
|
{
|
|
G4double pnew[mprt][5],xnew[mprt][4],betax,betay,betaz,
|
|
pold[oprt][5],p0nn,pxnn,pynn,pznn,pnn, mstring[2],
|
|
pnnout,xtotfacold[oprt];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13fnewpart
|
|
{
|
|
G4double leadfac[mprt];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
//
|
|
// boxinc
|
|
//
|
|
struct ccurqmd13boxic
|
|
{
|
|
G4int cbox;
|
|
G4int boxflag;
|
|
G4int mbox;
|
|
G4int bptityp[bptmax],bptiso3[bptmax],bptpart[bptmax];
|
|
G4int edensflag,para,solid, mbflag,mtest;
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13boxrc
|
|
{
|
|
G4double bptpmax[bptmax];
|
|
G4double edens;
|
|
G4double lbox;
|
|
G4double lboxhalbe;
|
|
G4double lboxd;
|
|
G4double mbp0, mbpx, mbpy, mbpz;
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
// comnorm
|
|
struct ccurqmd13normsplin
|
|
{
|
|
G4double x_norm[n][4],y_norm[n][4];
|
|
G4double y2a[n][4],y2b[n][4], dx;
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
// comstr
|
|
struct ccurqmd13FRGSPA
|
|
{
|
|
G4double pjspns, pmix1s[njspin][3], pmix2s[njspin][3], pbars, parqls, parrs;
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13FRGCPA
|
|
{
|
|
G4double pjspnc, pmix1c[njspin][3], pmix2c[njspin][3], pbarc;
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13coparm
|
|
{
|
|
G4double parm[njspin];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
|
|
struct ccurqmd13const
|
|
{
|
|
G4double pi;
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
//// freezeout
|
|
//
|
|
struct ccurqmd13frcoor
|
|
{
|
|
G4double frr0[nmax], frrx[nmax], frry[nmax], frrz[nmax],
|
|
frp0[nmax], frpx[nmax], frpy[nmax], frpz[nmax];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
// input
|
|
struct ccurqmd13values
|
|
{
|
|
G4double valint[1];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
// cascinit
|
|
struct ccurqmd13ini
|
|
{
|
|
ftnlogical bcorr;
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
// iso
|
|
struct ccurqmd13factorials
|
|
{
|
|
G4double logfak[101];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
struct ccurqmd13cgks
|
|
{
|
|
G4double cgktab[jmax+1][2*jmax+1][2*jmax+1][jmax+1][jmax+1];
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
// UrQMD
|
|
//
|
|
struct ccurqmd13energies
|
|
{
|
|
G4double ekinbar, ekinmes, esky2, esky3, eyuk, ecb, epau;
|
|
};
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
// urqmd
|
|
extern "C"
|
|
{
|
|
extern int time_ ();
|
|
extern void loginit_();
|
|
extern void sseed_ (int*);
|
|
extern void uinit_ (int*);
|
|
extern void urqmd_ ();
|
|
extern int pdgid_ (int*, int*); //ityp
|
|
|
|
extern void g4urqmdblockdata_ ();
|
|
|
|
// urqmdparams
|
|
extern struct ccurqmd13urqmdparams urqmdparams_;
|
|
//coms
|
|
extern struct ccurqmd13sys sys_;
|
|
extern struct ccurqmd13rsys rsys_;
|
|
extern struct ccurqmd13comseed comseed_;
|
|
extern struct ccurqmd13logic logic_;
|
|
extern struct ccurqmd13mdprop mdprop_;
|
|
extern struct ccurqmd13cuts cuts_;
|
|
extern struct ccurqmd13spdata spdata_;
|
|
extern struct ccurqmd13isys isys_;
|
|
extern struct ccurqmd13coor coor_;
|
|
extern struct ccurqmd13frag frag_;
|
|
extern struct ccurqmd13aios aios_;
|
|
extern struct ccurqmd13pots pots_;
|
|
extern struct ccurqmd13scoor scoor_;
|
|
extern struct ccurqmd13sisys sisys_;
|
|
extern struct ccurqmd13ssys ssys_;
|
|
extern struct ccurqmd13rtdelay rtdelay_;
|
|
extern struct ccurqmd13itdelay itdelay_;
|
|
extern struct ccurqmd13svinfo svinfo_;
|
|
extern struct ccurqmd13ffermi ffermi_;
|
|
extern struct ccurqmd13peq peq_;
|
|
//comres
|
|
extern struct ccurqmd13versioning versioning_;
|
|
extern struct ccurqmd13resonances resonances_;
|
|
extern struct ccurqmd13sigtabi sigtabi_;
|
|
extern struct ccurqmd13sigtabr sigtabr_;
|
|
|
|
//comwid
|
|
extern struct ccurqmd13decaywidth decaywidth_;
|
|
extern struct ccurqmd13brwignorm brwignorm_;
|
|
extern struct ccurqmd13xsections xsections_;
|
|
extern struct ccurqmd13tabnames tabnames_;
|
|
//options
|
|
extern struct ccurqmd13options options_;
|
|
extern struct ccurqmd13optstrings optstrings_;
|
|
extern struct ccurqmd13loptions loptions_;
|
|
extern struct ccurqmd13stables stables_;
|
|
//colltab
|
|
extern struct ccurqmd13colltab colltab_;
|
|
//inputs
|
|
extern struct ccurqmd13inputs inputs_;
|
|
extern struct ccurqmd13input2 input2_;
|
|
extern struct ccurqmd13protarints protarints_;
|
|
extern struct ccurqmd13protarreals protarreals_;
|
|
//newpart
|
|
extern struct ccurqmd13inewpart inewpart_;
|
|
extern struct ccurqmd13rnewpart rnewpart_;
|
|
extern struct ccurqmd13fnewpart fnewpart_;
|
|
//bocinc
|
|
extern struct ccurqmd13boxic boxic_;
|
|
extern struct ccurqmd13boxrc boxrc_;
|
|
// comnorm
|
|
struct ccurqmd13normsplin normsplin_;
|
|
//comstr
|
|
struct ccurqmd13FRGSPA FRGSPA_;
|
|
struct ccurqmd13FRGCPA FRGCPA_;
|
|
struct ccurqmd13coparm coparm_;
|
|
struct ccurqmd13const const_;
|
|
// freezeout
|
|
struct ccurqmd13frcoor frcoor_;
|
|
//urqmd
|
|
extern struct ccurqmd13energies energies_;
|
|
//input
|
|
extern struct ccurqmd13values values_;
|
|
// cascinit
|
|
extern struct ccurqmd13ini ini_;
|
|
//iso
|
|
extern struct ccurqmd13factorials factorials_;
|
|
extern struct ccurqmd13cgks cgks_;
|
|
|
|
}
|
|
|
|
//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo......
|
|
#endif
|