Geant4
10.03
|
Class containing ABLA de-excitation code. More...
#include <G4Abla.hh>
Public Member Functions | |
G4Abla (G4Volant *aVolant, G4VarNtp *aVarntp) | |
This constructor is used by standalone test driver and the Geant4 interface. More... | |
~G4Abla () | |
Basic destructor. More... | |
G4Abla (G4Abla const &other) | |
Dummy copy constructor. More... | |
G4Abla & | operator= (G4Abla const &other) |
Dummy assignment operator. More... | |
void | setVerboseLevel (G4int level) |
Set verbosity level. More... | |
G4Volant * | getVolant () |
Get the internal output data structure pointer. More... | |
void | breakItUp (G4int nucleusA, G4int nucleusZ, G4double nucleusMass, G4double excitationEnergy, G4double angularMomentum, G4double recoilEnergy, G4double momX, G4double momY, G4double momZ, G4int eventnumber) |
Main interface to the de-excitation code. More... | |
void | initEvapora () |
Initialize ABLA evaporation code. More... | |
void | qrot (G4double z, G4double a, G4double bet, G4double sig, G4double u, G4double *qr) |
Coefficient of collective enhancement including damping Input: z,a,bet,sig,u Output: qr - collective enhancement factor See junghans et al., nucl. More... | |
void | mglw (G4double a, G4double z, G4double *el) |
Model de la goutte liquide de c. More... | |
void | mglms (G4double a, G4double z, G4int refopt4, G4double *el) |
Mglms. More... | |
G4double | spdef (G4int a, G4int z, G4int optxfis) |
G4double | fissility (int a, int z, int optxfis) |
Calculation of fissility parameter. More... | |
void | evapora (G4double zprf, G4double aprf, G4double *ee_par, G4double jprf, G4double *zf_par, G4double *af_par, G4double *mtota_par, G4double *pleva_par, G4double *pxeva_par, G4double *pyeva_par, G4int *ff_par, G4int *inttype_par, G4int *inum_par) |
Main evaporation routine. More... | |
void | direct (G4double zprf, G4double a, G4double ee, G4double jprf, G4double *probp_par, G4double *probn_par, G4double *proba_par, G4double *probf_par, G4double *ptotl_par, G4double *sn_par, G4double *sbp_par, G4double *sba_par, G4double *ecn_par, G4double *ecp_par, G4double *eca_par, G4double *bp_par, G4double *ba_par, G4int, G4int inum, G4int itest) |
Calculation of particle emission probabilities. More... | |
void | densniv (G4double a, G4double z, G4double ee, G4double esous, G4double *dens, G4double bshell, G4double bs, G4double bk, G4double *temp, G4int optshp, G4int optcol, G4double defbet) |
Level density parameters. More... | |
G4double | bfms67 (G4double zms, G4double ams) |
This subroutine calculates the fission barriers of the liquid-drop model of Myers and Swiatecki (1967). More... | |
void | lpoly (G4double x, G4int n, G4double pl[]) |
This subroutine calculates the ordinary legendre polynomials of order 0 to n-1 of argument x and stores them in the vector pl. More... | |
G4double | eflmac (G4int ia, G4int iz, G4int flag, G4int optshp) |
This function will calculate the liquid-drop nuclear mass for spheri configuration according to the preprint NUCLEAR GROUND-STATE MASSES and DEFORMATIONS by P. More... | |
void | appariem (G4double a, G4double z, G4double *del) |
Procedure for calculating the pairing correction to the binding energy of a specific nucleus. More... | |
void | parite (G4double n, G4double *par) |
PROCEDURE FOR CALCULATING THE PARITY OF THE NUMBER N. More... | |
G4double | tau (G4double bet, G4double homega, G4double ef, G4double t) |
RISE TIME IN WHICH THE FISSION WIDTH HAS REACHED 90 PERCENT OF ITS FINAL VALUE. More... | |
G4double | cram (G4double bet, G4double homega) |
KRAMERS FAKTOR - REDUCTION OF THE FISSION PROBABILITY INDEPENDENT OF EXCITATION ENERGY. More... | |
G4double | bipol (int iflag, G4double y) |
CALCULATION OF THE SURFACE BS OR CURVATURE BK OF A NUCLEUS RELATIVE TO THE SPHERICAL CONFIGURATION BASED ON MYERS, DROPLET MODEL FOR ARBITRARY SHAPES. More... | |
void | barfit (G4int iz, G4int ia, G4int il, G4double *sbfis, G4double *segs, G4double *selmax) |
THIS SUBROUTINE RETURNS THE BARRIER HEIGHT BFIS, THE GROUND-STATE ENERGY SEGS, IN MEV, AND THE ANGULAR MOMENTUM AT WHICH THE FISSION BARRIER DISAPPEARS, LMAX, IN UNITS OF H-BAR, WHEN CALLED WITH INTEGER AGUMENTS IZ, THE ATOMIC NUMBER, IA, THE ATOMIC MASS NUMBER, AND IL, THE ANGULAR MOMENTUM IN UNITS OF H-BAR. More... | |
G4double | haz (G4int k) |
Random numbers. More... | |
void | standardRandom (G4double *rndm, G4long *seed) |
G4double | expohaz (G4int k, G4double T) |
TIRAGE ALEATOIRE DANS UNE EXPONENTIELLLE : Y=EXP(-X/T) More... | |
G4double | fd (G4double E) |
DISTRIBUTION DE MAXWELL. More... | |
G4double | f (G4double E) |
FONCTION INTEGRALE DE FD(E) More... | |
G4double | fmaxhaz (G4double T) |
tirage aleatoire dans une maxwellienne More... | |
G4double | pace2 (G4double a, G4double z) |
void | guet (G4double *x_par, G4double *z_par, G4double *find_par) |
void | lorab (G4double gam, G4double eta, G4double ein, G4double pin[], G4double *eout, G4double pout[]) |
void | translab (G4double gamrem, G4double etrem, G4double csrem[4], G4int nopart, G4int ndec) |
void | translabpf (G4double masse1, G4double t1, G4double p1, G4double ctet1, G4double phi1, G4double gamrem, G4double etrem, G4double R[][4], G4double *plab1, G4double *gam1, G4double *eta1, G4double csdir[]) |
void | rotab (G4double R[4][4], G4double pin[4], G4double pout[4]) |
G4int | min (G4int a, G4int b) |
G4double | min (G4double a, G4double b) |
G4int | max (G4int a, G4int b) |
G4double | max (G4double a, G4double b) |
G4int | nint (G4double number) |
G4int | secnds (G4int x) |
G4int | mod (G4int a, G4int b) |
G4double | dmod (G4double a, G4double b) |
G4double | dint (G4double a) |
G4int | idint (G4double a) |
G4int | idnint (G4double value) |
G4double | utilabs (G4double a) |
G4double | dmin1 (G4double a, G4double b, G4double c) |
G4Ec2sub * | getFrldmTable () |
Private Attributes | |
G4int | verboseLevel |
G4int | ilast |
G4AblaFissionBase * | fissionModel |
G4Pace * | pace |
G4Ald * | ald |
G4Eenuc * | eenuc |
G4Ec2sub * | ec2sub |
G4Ecld * | ecld |
G4Fb * | fb |
G4Fiss * | fiss |
G4Opt * | opt |
G4Volant * | volant |
G4VarNtp * | varntp |
This constructor is used by standalone test driver and the Geant4 interface.
aHazard | random seeds |
aVolant | data structure for ABLA output |
aVarNtp | data structure for transfering ABLA output to Geant4 interface |
Definition at line 45 of file G4Abla.cc.
References G4Volant::iv, and G4VarNtp::ntrack.
G4Abla::~G4Abla | ( | ) |
G4Abla::G4Abla | ( | G4Abla const & | other | ) |
Dummy copy constructor.
void G4Abla::barfit | ( | G4int | iz, |
G4int | ia, | ||
G4int | il, | ||
G4double * | sbfis, | ||
G4double * | segs, | ||
G4double * | selmax | ||
) |
THIS SUBROUTINE RETURNS THE BARRIER HEIGHT BFIS, THE GROUND-STATE ENERGY SEGS, IN MEV, AND THE ANGULAR MOMENTUM AT WHICH THE FISSION BARRIER DISAPPEARS, LMAX, IN UNITS OF H-BAR, WHEN CALLED WITH INTEGER AGUMENTS IZ, THE ATOMIC NUMBER, IA, THE ATOMIC MASS NUMBER, AND IL, THE ANGULAR MOMENTUM IN UNITS OF H-BAR.
(PLANCK'S CONSTANT DIVIDED BY 2*PI).
Definition at line 2687 of file G4Abla.cc.
Referenced by direct(), and evapora().
CALCULATION OF THE SURFACE BS OR CURVATURE BK OF A NUCLEUS RELATIVE TO THE SPHERICAL CONFIGURATION BASED ON MYERS, DROPLET MODEL FOR ARBITRARY SHAPES.
Definition at line 2632 of file G4Abla.cc.
References bk, idint(), and verboseLevel.
Referenced by direct().
void G4Abla::breakItUp | ( | G4int | nucleusA, |
G4int | nucleusZ, | ||
G4double | nucleusMass, | ||
G4double | excitationEnergy, | ||
G4double | angularMomentum, | ||
G4double | recoilEnergy, | ||
G4double | momX, | ||
G4double | momY, | ||
G4double | momZ, | ||
G4int | eventnumber | ||
) |
Main interface to the de-excitation code.
nucleusA | mass number of the nucleus |
nucleusZ | charge number of the nucleus |
nucleusMass | mass of the nucleus |
excitationEnergy | excitation energy of the nucleus |
angularMomentum | angular momentum of the nucleus (produced as output by INCL4) |
recoilEnergy | recoil energy of the nucleus |
momX | momentum x-component |
momY | momentum y-component |
momZ | momentum z-component |
eventnumber | number of the event |
Definition at line 102 of file G4Abla.cc.
References G4Volant::acv, G4Volant::clear(), G4VarNtp::clear(), G4AblaFissionBase::doFission(), G4Volant::dump(), G4Fb::efa, G4VarNtp::enerj, G4VarNtp::estfis, evapora(), fb, fissionModel, G4AblaRandom::flat(), G4VarNtp::iafis, idnint(), G4Volant::iv, G4VarNtp::izfis, G4VarNtp::kfis, lorab(), mglms(), G4VarNtp::ntrack, pace2(), G4Volant::pcv, G4VarNtp::philab, G4VarNtp::plab, rotab(), G4VarNtp::tetlab, translab(), translabpf(), varntp, verboseLevel, volant, G4Volant::xcv, G4Volant::ycv, G4Volant::zcv, and G4Volant::zpcv.
Referenced by G4AblaInterface::DeExcite().
void G4Abla::direct | ( | G4double | zprf, |
G4double | a, | ||
G4double | ee, | ||
G4double | jprf, | ||
G4double * | probp_par, | ||
G4double * | probn_par, | ||
G4double * | proba_par, | ||
G4double * | probf_par, | ||
G4double * | ptotl_par, | ||
G4double * | sn_par, | ||
G4double * | sbp_par, | ||
G4double * | sba_par, | ||
G4double * | ecn_par, | ||
G4double * | ecp_par, | ||
G4double * | eca_par, | ||
G4double * | bp_par, | ||
G4double * | ba_par, | ||
G4int | , | ||
G4int | inum, | ||
G4int | itest | ||
) |
Calculation of particle emission probabilities.
Definition at line 1457 of file G4Abla.cc.
References G4Fiss::akap, G4Ecld::alpha, barfit(), G4Fiss::bet, bipol(), bk, bp, cram(), densniv(), G4Ecld::ecfnz, G4Ecld::ecgnz, ecld, G4Fb::efa, fb, fiss, fissility(), G4AblaRandom::flat(), fmaxhaz(), G4ThreadLocal, G4Fiss::homega, idnint(), G4Fiss::ifis, ilast, mglms(), mglw(), G4Fiss::optcol, G4Fiss::optles, G4Fiss::optshp, G4Fiss::optxfis, parite(), pi, G4InuclParticleNames::sp, spdef(), tau(), verboseLevel, and G4Ecld::vgsld.
Referenced by evapora().
This function will calculate the liquid-drop nuclear mass for spheri configuration according to the preprint NUCLEAR GROUND-STATE MASSES and DEFORMATIONS by P.
Mo"ller et al. from August 16, 1993 p. All constants are taken from this publication for consistency.
Definition at line 2385 of file G4Abla.cc.
References a, a0, mod(), n, pi, and utilabs().
Referenced by mglms().
void G4Abla::evapora | ( | G4double | zprf, |
G4double | aprf, | ||
G4double * | ee_par, | ||
G4double | jprf, | ||
G4double * | zf_par, | ||
G4double * | af_par, | ||
G4double * | mtota_par, | ||
G4double * | pleva_par, | ||
G4double * | pxeva_par, | ||
G4double * | pyeva_par, | ||
G4int * | ff_par, | ||
G4int * | inttype_par, | ||
G4int * | inum_par | ||
) |
Main evaporation routine.
Definition at line 1098 of file G4Abla.cc.
References G4Volant::acv, barfit(), bp, direct(), dmin1(), G4Volant::dump(), G4Ecld::ecgnz, ecld, G4Fb::efa, fb, fiss, G4AblaRandom::flat(), G4ThreadLocal, G4Volant::getTotalMass(), idnint(), G4Volant::iv, G4Fiss::optshp, pc, G4Volant::pcv, verboseLevel, volant, G4Volant::xcv, G4Volant::ycv, G4Volant::zcv, and G4Volant::zpcv.
Referenced by breakItUp().
G4double G4Abla::fissility | ( | int | a, |
int | z, | ||
int | optxfis | ||
) |
tirage aleatoire dans une maxwellienne
Definition at line 3032 of file G4Abla.cc.
References f(), fd(), G4AblaRandom::flat(), G4ThreadLocal, and nint().
Referenced by direct().
|
inline |
|
inline |
Random numbers.
Definition at line 3520 of file G4Abla.cc.
References a, G4AblaRandom::flat(), G4ThreadLocal, mod(), nint(), and secnds().
Referenced by expohaz().
void G4Abla::initEvapora | ( | ) |
Initialize ABLA evaporation code.
Definition at line 682 of file G4Abla.cc.
References a, G4Ald::ak, G4Fiss::akap, ald, G4Ecld::alpha, G4Ald::as, G4Ald::av, G4Fiss::bet, G4Pace::dm, ec2sub, G4Ecld::ecfnz, G4Ecld::ecgnz, ecld, G4Ec2sub::ecnz, G4Opt::eefac, fiss, G4AblaVirtualData::getAlpha(), G4AblaVirtualData::getEcnz(), G4AblaVirtualData::getPace2(), G4AblaVirtualData::getVgsld(), G4Fiss::homega, G4Fiss::ifis, G4Fiss::koeff, n, opt, G4Ald::optafan, G4Opt::optcha, G4Fiss::optcol, G4Opt::optemd, G4Fiss::optles, G4Fiss::optshp, G4Fiss::optxfis, pace, G4AblaDataFile::readData(), verboseLevel, and G4Ecld::vgsld.
Referenced by G4AblaInterface::G4AblaInterface().
void G4Abla::lorab | ( | G4double | gam, |
G4double | eta, | ||
G4double | ein, | ||
G4double | pin[], | ||
G4double * | eout, | ||
G4double | pout[] | ||
) |
Definition at line 3489 of file G4Abla.cc.
Referenced by breakItUp().
This subroutine calculates the ordinary legendre polynomials of order 0 to n-1 of argument x and stores them in the vector pl.
They are calculated by recursion relation from the first two polynomials. Written by A.J.Sierk LANL t-9 February, 1984
Definition at line 2367 of file G4Abla.cc.
References n.
Referenced by barfit().
Mglms.
Definition at line 971 of file G4Abla.cc.
References ec2sub, G4Ec2sub::ecnz, eflmac(), and idnint().
Referenced by breakItUp(), direct(), and translab().
Definition at line 3631 of file G4Abla.cc.
Referenced by fmaxhaz(), haz(), and translab().
Definition at line 3093 of file G4Abla.cc.
References G4Pace::dm, guet(), idint(), and pace.
Referenced by breakItUp().
PROCEDURE FOR CALCULATING THE PARITY OF THE NUMBER N.
RETURNS -1 IF N IS ODD AND +1 IF N IS EVEN
Definition at line 2561 of file G4Abla.cc.
References dint(), and idnint().
Referenced by appariem(), densniv(), and direct().
Coefficient of collective enhancement including damping Input: z,a,bet,sig,u Output: qr - collective enhancement factor See junghans et al., nucl.
phys. a 629 (1998) 635
z | charge number |
a | mass number |
bet | beta deformation |
sig | perpendicular spin cut-off factor |
u | Energy |
Definition at line 898 of file G4Abla.cc.
References n.
Referenced by densniv().
Definition at line 3505 of file G4Abla.cc.
Referenced by breakItUp().
Definition at line 3659 of file G4Abla.cc.
References G4InuclParticleNames::tm.
Referenced by haz().
void G4Abla::setVerboseLevel | ( | G4int | level | ) |
Set verbosity level.
Definition at line 76 of file G4Abla.cc.
References fissionModel, G4AblaFissionBase::setVerboseLevel(), and verboseLevel.
Definition at line 1014 of file G4Abla.cc.
References fissility(), and idnint().
Referenced by direct().
void G4Abla::translab | ( | G4double | gamrem, |
G4double | etrem, | ||
G4double | csrem[4], | ||
G4int | nopart, | ||
G4int | ndec | ||
) |
Definition at line 3202 of file G4Abla.cc.
References G4Volant::acv, G4VarNtp::addParticle(), G4VarNtp::avv, G4Volant::copied, G4Volant::dump(), G4VarNtp::dump(), G4VarNtp::enerj, G4VarNtp::itypcasc, G4Volant::iv, mglms(), nint(), G4VarNtp::ntrack, G4Volant::pcv, G4VarNtp::philab, G4VarNtp::plab, G4VarNtp::tetlab, varntp, VARNTPSIZE, verboseLevel, volant, G4Volant::xcv, G4Volant::ycv, G4Volant::zcv, G4Volant::zpcv, and G4VarNtp::zvv.
Referenced by breakItUp().
void G4Abla::translabpf | ( | G4double | masse1, |
G4double | t1, | ||
G4double | p1, | ||
G4double | ctet1, | ||
G4double | phi1, | ||
G4double | gamrem, | ||
G4double | etrem, | ||
G4double | R[][4], | ||
G4double * | plab1, | ||
G4double * | gam1, | ||
G4double * | eta1, | ||
G4double | csdir[] | ||
) |
Definition at line 3428 of file G4Abla.cc.
Referenced by breakItUp().
|
private |
Definition at line 316 of file G4Abla.hh.
Referenced by densniv(), initEvapora(), and ~G4Abla().
|
private |
Definition at line 318 of file G4Abla.hh.
Referenced by getFrldmTable(), initEvapora(), mglms(), and ~G4Abla().
|
private |
|
private |
|
private |
|
private |
Definition at line 314 of file G4Abla.hh.
Referenced by breakItUp(), setVerboseLevel(), and ~G4Abla().
|
private |
Definition at line 322 of file G4Abla.hh.
Referenced by initEvapora(), and ~G4Abla().
|
private |
Definition at line 315 of file G4Abla.hh.
Referenced by initEvapora(), pace2(), and ~G4Abla().
|
private |
Definition at line 324 of file G4Abla.hh.
Referenced by breakItUp(), and translab().
|
private |
Definition at line 311 of file G4Abla.hh.
Referenced by bipol(), breakItUp(), densniv(), direct(), evapora(), initEvapora(), setVerboseLevel(), and translab().
|
private |
Definition at line 323 of file G4Abla.hh.
Referenced by breakItUp(), evapora(), getVolant(), and translab().