#include <CNucleus.h>
Inheritance diagram for CNucleus:
Public Member Functions | |
float | evaporationWidth () |
float | BohrWheelerWidth () |
float | LestoneFissionWidth () |
float | LestoneCorrection (float Usaddle, float momInertiaEff, short iAfAn) |
CNucleus (int iZ, int iA) | |
CNucleus (int iZ, int iA, float fEx, float fJ) | |
~CNucleus () | |
float | getSumGammaEnergy () |
float | getTime () |
void | setNewIsotope (int iZ0, int iA0, float fEx0, float fJ0) |
void | setCompoundNucleus (float fEx0, float fJ0) |
void | setCompoundNucleus (float fEx0, double dJ0) |
void | setCompoundNucleus (double dEx0, float fJ0) |
void | setCompoundNucleus (double dEx0, double dJ0) |
void | setSpinAxis (CAngle angle) |
void | setSpinAxisDegrees (CAngle angle) |
void | setVelocityPolar (float=0., float=0., float=0.) |
void | setVelocityCartesian (float vx=0., float vy=0., float vz=0.) |
void | reset () |
void | print () |
void | printStableProducts () |
void | printAllProducts () |
void | vCMofAllProducts () |
void | energyConservation () |
CNucleus * | getProducts (int=-1) |
CNucleus * | getParent () |
CNucleus * | getLightDaughter () |
CNucleus * | getHeavyDaughter () |
CNucleus * | getCompoundNucleus () |
int | getNumberOfProducts () |
int | getZmaxEvap () |
void | excite (float, float) |
void | excite (float, double) |
void | excite (double, float) |
void | excite (double, double) |
void | excite (float) |
float | getTheta () |
float | getThetaDegrees () |
CAngle | getAngle () |
CAngle | getAngleDegrees () |
float | getKE () |
float | getVelocity () |
float | getMomentum () |
float * | getVelocityVector () |
float * | getMomentumVector () |
void | decay () |
bool | isAsymmetricFission () |
bool | isSymmetricFission () |
bool | isNotStatistical () |
bool | isSaddleToScission () |
bool | isResidue () |
int | getMultPost () |
int | getMultPre () |
int | getMultPostLight () |
int | getMultPostHeavy () |
int | getMultPreSaddle () |
int | getMultSaddleToScission () |
float | getFissionTimeSymmetric (float &timeScission) |
float | getFissionTimeAsymmetric () |
float | getDecayWidth () |
float | getLogLevelDensity () |
void | printParameters () |
Static Public Member Functions | |
static void | resetGlobal () |
static void | setTimeTransient (float time) |
static void | setFissionScaleFactor (float factor) |
static void | setBarWidth (float width) |
static void | setDeltaE (float de0) |
static void | setThreshold (float threshold0) |
static void | setAddToFisBarrier (float barAdd0) |
static void | setNoIMF () |
static void | setYesIMF () |
static void | setLestone () |
static void | setBohrWheeler () |
static void | setSolution (int isol) |
static void | setEvapMode (int iHF0=2) |
static float | getTimeTransient () |
static float | getFissionScaleFactor () |
static float | getBarWidth () |
static float | getDeltaE () |
static float | getThreshold () |
static float | getAddToFisBarrier () |
Public Attributes | |
bool | abortEvent |
abort the event | |
int | origin |
specifies the origin of the fragment, prefission, post , etc | |
int | origin2 |
specifies the origin of the fragment, prefission, post , etc | |
Static Public Attributes | |
static CRandom | ran |
pointer to random number generator | |
static float const | pi = acos(-1.) |
3.14159 | |
static double const | EkFraction = 0.01 |
Protected Member Functions | |
void | saddleToScission () |
void | massAsymmetry (bool) |
float | selectJ (float, float, float, float) |
float | S2Loop (float Ekvalue) |
float | S2Width (float Ekvalue) |
float | EkWidth (float ek) |
void | getSpin (bool saddle) |
float | EkLoop () |
float | getSumTl (float, float) |
float | getWidthZA (float, short) |
void | angleEvap () |
void | angleIsotropic () |
void | angleGamma () |
void | binaryDecay () |
void | exciteScission (float, float, bool sym=1) |
float | asyFissionWidth () |
float | asyFissionWidthZA () |
float | asyFissionWidthBW () |
void | force8Be () |
void | force5Li () |
void | force5He () |
void | force9B () |
float | evaporationWidthSS () |
float | gammaWidth () |
float | gammaWidthE1GDR () |
float | gammaWidthMultipole (int) |
float | hauserFeshbach (int) |
float | weiskopf (bool saddle) |
void | asyFissionDivide () |
void | recursiveDecay () |
void | split (CAngle) |
Protected Attributes | |
float | Ecoul |
Coulomb barrier (HauserFeshbach). | |
bool | notStatistical |
this does not decay statistically, evap. frag. only | |
short unsigned | notStatisticalMode |
specifies type of nonStatisical decay | |
float | fPairing |
pairing energy | |
float | fShell |
shell correction | |
float | fU0 |
thermal excitation energy | |
float | Erot |
yrast energy | |
float | Jmax |
max spin with a fission barrier | |
float | fMInertia |
spherical moment of inertia | |
float | logLevelDensity |
store the log of the level density of the nucleus | |
float | temp |
nuclear temperature | |
int | fissionZ |
proton number of fission fragment | |
int | fissionA |
mass number of fission fragment | |
int | fissioningZ |
proton number of fission parent | |
int | fissioningA |
mass number of fission parent | |
int | iZ1_IMF_Max |
maximum Z for IMF emission | |
float | fissionU |
thermal excitation energy of both fission fragments | |
float | EdefScission |
deformation energy of the scission configuration | |
bool | saddleToSciss |
indicated decay during saddle-to-scission transition | |
float | timeSinceSaddle |
stores the time since the saddle was crossed | |
float | timeSinceStart |
stores the time since the decay began | |
bool | needSymmetricFission |
indicated the Bohr-Wheeler width is needed | |
float | timeScission |
time required to go from saddle to scission | |
int | HF |
evaporation mode chosen for a given decay | |
CScission | scission |
gives scission energeis, etc | |
bool | bStable |
indicated this nucleus is particle-stable | |
CAngle | spin |
orientation of the spin axis | |
float | velocity [3] |
velocity vector of nucleus in cm/ns | |
float | momentum [3] |
momentum vector in MeV/c | |
CLightP * | lightP |
points to the light-particle decay mode | |
float | S2Start |
Hauser-Feshback spin of daughter. | |
float | UMin |
min thermal excitation energy in Hauser-Feshbach | |
float | EcostMin |
the min of the energetic cost of emitting light particles | |
int | lMin |
minimum orbital AM for Hauser-Feshbach | |
int | lMax |
maximum orbital AM for Hauser-Feshbach | |
float | lPlusSMax |
max value of l+S of evaporated particle | |
float | lPlusSMin |
min value of l+S of evaporated particle | |
float | rResidue |
radius of daughter | |
float | rLightP |
radius of evaporated particle | |
float | S2 |
spin of daughter | |
float | EYrast2 |
rotational energy of daughter | |
SStoreEvap * | storeEvap |
information of evap sub channels | |
SStoreSub * | storeSub |
store info on l distribution | |
int | iStore |
actual number of evap sub channels | |
short unsigned | EvapZ2 |
proton number of daughter after evap. | |
short unsigned | EvapA2 |
mass number of daughter after evap. | |
short unsigned | EvapZ1 |
proton number of evaporated particle | |
short unsigned | EvapA1 |
mass number of evaporated particle | |
short unsigned | EvapL |
orbital AM of evaporated particle | |
short unsigned | EvapMode |
ID number of evap channel. | |
float | EvapEx1 |
excitation ennergy of evap. particle | |
float | EvapEx2 |
excitation energy of daughter after evap. | |
float | EvapS2 |
spin of daughter after evap | |
float | EvapS1 |
spin of evaporated particle | |
float | EvapEk |
kinetic energy of evaporated particle (MeV) | |
float | EvapLPlusS |
toatl spin plus orbital AM of evaporated particle | |
float | GammaEx |
excitation energy after gamma emission | |
float | GammaJ |
spin after gamma emission | |
int | GammaL |
gamma type E1=1, E2 = 2 | |
CNucleus * | daughterLight |
pointer to the lighter of the decay products | |
CNucleus * | daughterHeavy |
pointer to the heavier of the decay products | |
CNucleus * | parent |
pointer to the parent nucleus | |
bool | bResidue |
true if decay produced an evaporation residue | |
bool | bSymmetricFission |
true if decay resulted in symmetric fission | |
bool | bAsymmetricFission |
true if decay resulted in asymmetric fission | |
int | multPostLight |
number of post-fission neutrons for lighter ff | |
int | multPostHeavy |
number of post-fission neutrons for heavier ff | |
int | multPreSaddle |
number of pre-scission neutrons emitted | |
int | multSaddleToScission |
number of neutrons emitted between saddle and scission | |
float | sigma2 |
variance of fission mass distribution | |
float | symSaddlePoint |
symmetric saddle point energy | |
Static Protected Attributes | |
static bool const | noSymmetry = 1 |
true - old gemini with Morreto for all | |
static float const | viscosity_scission = 1. |
viscosity during saddleTosciss | |
static float const | viscosity_saddle = 1.5 |
viscosity during saddleTosciss | |
static float | timeTransient = 0. |
transient fission delay | |
static float | fissionScaleFactor = 1.00 |
fission width scaled by this factor | |
static float | barAdd = 0. |
adds to Sierk fission barrier | |
static int | iPoint = -1 |
pointer to array of stable fragments | |
static int | iHF = 2 |
set evaporation mode | |
static bool | noIMF = 0 |
no imf emission is considered | |
static bool | BohrWheeler = 1 |
no imf emission is considered | |
static int const | nStore = 5000 |
number of evap sub Channels allowed | |
static short unsigned | Zshell = 2 |
enforce shell effects in evaporation | |
static CYrast * | yrast |
gives fission barriers and rotational energies | |
static CLevelDensity * | levelDensity |
gives level densities | |
static float const | r0 = 1.16 |
radius const (fm) | |
static float const | sep = 2. |
separation between fragments | |
static float | threshold = .001 |
used to turn off unlikey evaporations | |
static CEvap * | evap |
stores info on evaporated particles | |
static int const | nSub = 800 |
number of l-waves stores in HF | |
static int const | nSubTl = 80 |
number of l-waves stores in HF in sumTl | |
static short unsigned const | lMaxQuantum = 50 |
number of l-waves to store angular dist | |
static float | de = 1.0 |
kinetic-energy interval for integrating in Hauser-Feshb | |
static CAngleDist | angleDist |
selects angular distributions of decays | |
static float const | gammaInhibition [3] = {0.,.025,9.} |
scaling of gamma width from Weisskopf value | |
static float const | wue [3] = {0.,6.8e-8,4.9e-14} |
coeff for Weisskopf units (gamma decay) | |
static int const | nGamma = 4000 |
number of gamma decay modes considered | |
static int const | Nproducts = 180 |
total number of possible decay products from all decays | |
static CNucleus * | allProducts [] = {0} |
array of pointer to all decay products (stable or intermediate) | |
static int | iProducts = 0 |
number of decay products from all decays | |
static int const | Nstable = 100 |
max number of stable decay products | |
static int | iStable = 0 |
number of stable decay products | |
static CNucleus * | stableProducts [] = {0} |
array of pointers to all stable decay products for all CN decays | |
static float const | kRotate = 41.563 |
constant to calculated rotational energy | |
static float | sumGammaEnergy = 0. |
store the energy emitted in gamma rays |
!
Class CNucleus impliments the GEMINI statistical mode code. It follows the decay of a compound nucleus by a sequential series of binary decays. The decay widths are calculated with Hauser-Feshbash formulism for light particles and Morreto's transition-state formulism for other binary decays
CNucleus::CNucleus | ( | int | iZ0, | |
int | iA0 | |||
) |
constructor specifies the isotope.
iZ0 | is the proton number | |
iA0 | is the mass number |
CNucleus::CNucleus | ( | int | iZ0, | |
int | iA0, | |||
float | fEx0, | |||
float | fJ0 | |||
) |
Constructor specifying more parameters
iZ0 | is proton number | |
iA0 | is mass number | |
fEx0 | is excitation energy in MeV | |
fJ0 | is spin in hbar |
CNucleus::~CNucleus | ( | ) |
destructor
void CNucleus::angleEvap | ( | ) | [protected] |
Selects the angle and velocity of an evaporated product
void CNucleus::angleGamma | ( | ) | [protected] |
Selects the angle and sin axis of a daughter product after gamma emission
void CNucleus::angleIsotropic | ( | ) | [protected] |
selects the velocity of evaporated particles, the emission angles is assumed isotropic
void CNucleus::asyFissionDivide | ( | ) | [protected] |
Responsible for subdividing spin and excitation energy for asymmetry fission.
its uses a two-sphere approximation to get collective modes
float CNucleus::asyFissionWidth | ( | ) | [protected] |
Calculates the asymmetric decay width in MeV from the gammaZ formalism.
if noSymmetry = 1 then it only includes channels outside of the fission peak
float CNucleus::asyFissionWidthBW | ( | ) | [protected] |
Calculates the complex fragments decay widths in MeV where the total fission width all channels is normalised to the Bohr-Wheeler result.
float CNucleus::asyFissionWidthZA | ( | ) | [protected] |
Uses the GammaZA formalism to get complex fragment decay widths as in the original GEMINI.
The asymmetric fission width are in MeV.
void CNucleus::binaryDecay | ( | ) | [protected] |
produces a single binary decay of the nucleus from statistical-model widths
float CNucleus::BohrWheelerWidth | ( | ) |
Gives the Bohr-Wheeler decay width for fission in units of MeV
void CNucleus::decay | ( | ) |
Causes the nucleus to undergo statistical decay
float CNucleus::EkLoop | ( | ) | [protected] |
Hauser-Feshbach function to sum over kinetic energy for a given S2
float CNucleus::EkWidth | ( | float | ek | ) | [protected] |
Calculates the Hauser-Feshbach decay width for a single S2 and ek, but integrated over l
void CNucleus::energyConservation | ( | ) |
used to check for conservation of energy.
this is a debugging tool. prints out the various contributions to teh final energy and the energy difference between inital and final states. The latter shoukd be zero is energy is conserved.
float CNucleus::evaporationWidth | ( | ) |
Calculates the total decay widths in MeV for light particle evaporation. using the Hauser-Feshbach formulism
float CNucleus::evaporationWidthSS | ( | ) | [protected] |
Calculates the decay width for evaporation at the scission point using the Weiskopf formalism
The width is given in units of MeV
void CNucleus::excite | ( | float | fEx0 | ) |
sets the excitation energy and of the compound nucleus for a Weisskopf calculation (Spin not considered).
fEx0 | is the excitation energy in MeV |
void CNucleus::excite | ( | double | dEx0, | |
double | dJ0 | |||
) |
sets the excitation energy and spin of the compound nucleus.
dEx0 | is the excitation energy in MeV | |
dJ0 | is the spin in units of hbar |
void CNucleus::excite | ( | double | dEx0, | |
float | fJ0 | |||
) |
sets the excitation energy and spin of the compound nucleus.
dEx0 | is the excitation energy in MeV | |
fJ0 | is the spin in units of hbar |
void CNucleus::excite | ( | float | fEx0, | |
double | dJ0 | |||
) |
sets the excitation energy and spin of the compound nucleus.
fEx0 | is the excitation energy in MeV | |
dJ0 | is the spin in units of hbar |
void CNucleus::excite | ( | float | fEx0, | |
float | fJ0 | |||
) |
sets the excitation energy and spin of the compound nucleus.
fEx0 | is the excitation energy in MeV | |
fJ0 | is the spin in units of hbar |
void CNucleus::exciteScission | ( | float | fEx0, | |
float | fJ0, | |||
bool | sym = 1 | |||
) | [protected] |
Initializes the excitation of the nucleus at its scission point and calculates the level density
void CNucleus::force5He | ( | ) | [protected] |
forces decay of 5He
void CNucleus::force5Li | ( | ) | [protected] |
forces decay of 5Li
void CNucleus::force8Be | ( | ) | [protected] |
forces decay of 8Be
void CNucleus::force9B | ( | ) | [protected] |
forces decay of 9B
float CNucleus::gammaWidth | ( | ) | [protected] |
Returns the total gamma-ray decay width in MeV
Contributions from E1's and E2's only
float CNucleus::gammaWidthE1GDR | ( | ) | [protected] |
Returns the gamma-ray decay width in MeV for statistical E1 taking into acount GDR strength function see see D.R. Chakrabarty et al. Phys Rev. C36 (1987) 1886
float CNucleus::gammaWidthMultipole | ( | int | iMode | ) | [protected] |
Returns the gamma-ray decay width in MeV for a specified multipole. The width is from Blatt and Weisskopf, "Theoretical Nuclear Physics" (Wiley, New York, 1958) Page=649 scaled by the factors gammaInhibition[] Values of the latter are taken from Phys. Rev. C39, 516 (1989).
iMode | 1 is E1, 2=E2 |
float CNucleus::getAddToFisBarrier | ( | ) | [static] |
returns the quantity by which the symmerty fission is added to.
CAngle CNucleus::getAngle | ( | ) |
Returns the theta and phi angle of the fragments in radians
CAngle CNucleus::getAngleDegrees | ( | ) |
returns the theta and phi angles in degrees
float CNucleus::getBarWidth | ( | ) | [static] |
returns the paramter controlling the width of the barrier dist
CNucleus * CNucleus::getCompoundNucleus | ( | ) |
returns a pointer to the Compound nucleus
float CNucleus::getDecayWidth | ( | ) |
returns the evaporation plu gamma decay width in MeV Can easily be changed to give the toal decay with by also adding the symmetric and asymmetric fission
float CNucleus::getDeltaE | ( | ) | [static] |
returns the energy bin width used for integrating the Hauser-Feshbach formulism
float CNucleus::getFissionScaleFactor | ( | ) | [static] |
returns the fission scale factor
float CNucleus::getFissionTimeAsymmetric | ( | ) |
returns the time in zs when an asymmetric fission occured in the decay. Must be called only after decay() is called. If not asymmetric fission, then returns -1., if more than one asymmetric fission, the is returns the time of the first
float CNucleus::getFissionTimeSymmetric | ( | float & | timeScission | ) |
returns the saddle-crossing time in zs for symmetric fission. In addition, the scission time is stored in timeScission. If no symmetric fission occurs, then -1 is returned. If more than one symmetric fission, then the time of the first is returned. the fusction decay() must be run before using this function
timeScission | scission time in zs (outpot) |
CNucleus * CNucleus::getHeavyDaughter | ( | ) |
Returns a pointer to the heavy daughter nucleus If NULL is returned, then this fragment was stable
float CNucleus::getKE | ( | ) |
Returns the fragments kinetic energy in MeV.
CNucleus * CNucleus::getLightDaughter | ( | ) |
Returns a pointer to the light daughter nucleus if NULL is returned, then this fragment was stable or a fission event stated, in which case the heavy daughter pointer will not be NULL
float CNucleus::getLogLevelDensity | ( | ) |
returns the natural log of the level density in MeV-1
float CNucleus::getMomentum | ( | ) |
Returns the magnitude of the fragment's momentum in MeV/c
float * CNucleus::getMomentumVector | ( | ) |
returns a pointer to the arrays containing the momentum vector. units are in MeV/c
int CNucleus::getMultPost | ( | ) |
Returns the number of neutrons emitted from both fission fragments
int CNucleus::getMultPostHeavy | ( | ) |
returns the multiplicity of neutrons emitted from the heavier fission fragment.
int CNucleus::getMultPostLight | ( | ) |
returns the multiplicity of neutrons emitted from the lighter fission fragment.
int CNucleus::getMultPre | ( | ) |
Returns the number of neutrons emitted before the scission point
int CNucleus::getMultPreSaddle | ( | ) |
Returns the multiplicity of neutrons emitted before the saddle-point
int CNucleus::getMultSaddleToScission | ( | ) |
Returns the multiplicity of neutrons emitted between saddle and scission
int CNucleus::getNumberOfProducts | ( | ) |
Returns the number of stable decay products produced in the the statistical decay
CNucleus * CNucleus::getParent | ( | ) |
Returns a pointer to the parent nucleus, i.e. the nucleus which emitted this product. This is useful to see if there was secondary decay. If the NULL pointer is returned, then the initial compound nucleus did not decay presumably because there was not enough excitation energy. Obveriously in this case the final product is the same as the initial nucleus and there is no parent.
CNucleus * CNucleus::getProducts | ( | int | i = -1 |
) |
Returns a pointer to a stable decay product.
if no input given, the first or next product is pointed to. /param i is the index of the product (0-getNumberOfProducts-1)
void CNucleus::getSpin | ( | bool | saddle | ) | [protected] |
determined the spin of the residue (for Weisskopf)
saddle | bool true=saddleToScission decay false=normal evaporation |
float CNucleus::getSumGammaEnergy | ( | ) |
returns the total energy removed by gamma rays in MeV
float CNucleus::getSumTl | ( | float | ek, | |
float | temp | |||
) | [protected] |
Calculates
ek | is ![]() | |
temp | is the temperature on the residue in MeV |
float CNucleus::getTheta | ( | ) |
Return the theta angle of the fragments in radians
float CNucleus::getThetaDegrees | ( | ) |
Return the theta angle of the fragments in degrees
float CNucleus::getThreshold | ( | ) | [static] |
returns the threshold used to cut out low probability evaporation channels
float CNucleus::getTime | ( | ) |
returns the time in zs at which the particle was created after the formation of the CN
float CNucleus::getTimeTransient | ( | ) | [static] |
returns the transient time (fission delay) in zs different from the default value. This is a static function.
float CNucleus::getVelocity | ( | ) |
Returns the magnitude of the fragment's velocity in cm/ns
float * CNucleus::getVelocityVector | ( | ) |
returns a pointer to the array containing the velocity vector. units are in cm/ns
float CNucleus::getWidthZA | ( | float | saddlePoint, | |
short | iAfAn | |||
) | [protected] |
Returns the transition-state decay width.
saddlePoint | is the saddle-point energy in MeV | |
iAfAn | indicates that the saddle-point ld parameter is increased by afan |
int CNucleus::getZmaxEvap | ( | ) |
returns the max Z for evaporation
float CNucleus::hauserFeshbach | ( | int | iChannel | ) | [protected] |
Calculated the Hauser-Feshbach decay width in MeV for a given channel
iChannel | is the channel of the evaporated particle |
bool CNucleus::isAsymmetricFission | ( | ) |
Returns a true value if an asymmetyric fission occurred Only use this function for the compound nucleus object, otherwise the output is garbage.
bool CNucleus::isNotStatistical | ( | ) |
returns a true value if the fragment does not undergo statistical decay, for example a particular excited state of a nucleus. These nuclei are produced in evaporation processes.
bool CNucleus::isResidue | ( | ) |
Returns a true value if the event doesn't fission and has an evaporation residue. Only use this function for the compound nucleus object, otherwise the output is garbage.
bool CNucleus::isSaddleToScission | ( | ) |
returns true if the nucleus is undergoing a saddle to scission transition. All symmetric fission events, pass thought this stage and some emit light particles during this stage.
bool CNucleus::isSymmetricFission | ( | ) |
Returns a true value if a symmetric fission occurred Only use this function for the compound nucleus object, otherwise the output is garbage.
float CNucleus::LestoneCorrection | ( | float | Usaddle, | |
float | momInertiaEff, | |||
short | iAfAn | |||
) |
Gives a correction to either the Bohr-Wheeler or Morreto formalism when the tilting angular momentum bearing mode is considered. See J. Lestone PRC 59 (1999) 1540 the saddle-point shape is assumed constant as a function of K, the projection of the spin on the symmetry axis.
Usaddle | is saddle point excitation energy in Mev | |
momInertiaEff | is the effective moment of inertia for tilting | |
iAfAn | switch to allow af/an value. |
float CNucleus::LestoneFissionWidth | ( | ) |
Gives the fission decay width from Lestone in units of MeV. Lestone gives an extention of the BohrWheeler width with the inclusion of one of the angular momentum degrees of freedom (tilting mode). See PRC 59 (1999) 1540.
void CNucleus::massAsymmetry | ( | bool | saddleOrScission | ) | [protected] |
fission mass division - uses the Rusanov systemtics to determine the fission-fragment mass distribution.
saddleOrScission | is true then the third Rusanov systematics are used, i.e., variance is determined from the temperature at the scission point if false, the second Rusanov systematics is used, i.e, the variance is determined from the temperature at the saddle point |
void CNucleus::print | ( | ) |
prints out the parameters of the nucleus
void CNucleus::printAllProducts | ( | ) |
Prints out information on all products (stable and intermediates) formed in the statistical decay
void CNucleus::printParameters | ( | ) |
prints out the values of the statistical model parameters
void CNucleus::printStableProducts | ( | ) |
Prints out the information on all the stable decay products produced in the statistical decay
void CNucleus::recursiveDecay | ( | ) | [protected] |
recursive function does multiple binary decays until excitation energy is exhausted.
After executation, the pointer array allProducts- points to each of the intermediate and final products produced. The array stableProducts points to just the final stable products. This array can be accessed to get these fragments
void CNucleus::reset | ( | ) |
This reset function should be used before starting another statistical decay.
void CNucleus::resetGlobal | ( | ) | [static] |
set the pointers to the static arrays of products to NULL.
float CNucleus::S2Loop | ( | float | Ekvalue | ) | [protected] |
Hauser-Feshbach routine to sum of the spin of the residual nucleus
Ekvalue | if < 0, then loop over Ek, other for the specificed Ekvalue |
float CNucleus::S2Width | ( | float | Ekvalue | ) | [protected] |
calculates the Hauser-Feshbach decay width for a single S2 values, but integrated over l and ek
Ekvalue | if < 0, then loop over Ek, other for the specificed Ekvalue |
void CNucleus::saddleToScission | ( | ) | [protected] |
Treats the saddle to scission evaporations
float CNucleus::selectJ | ( | float | ac, | |
float | aden, | |||
float | entropy0, | |||
float | Jmax | |||
) | [protected] |
Randomly selects the spin associated with a fission normal modes such as wriggling, twisting, etc.
void CNucleus::setAddToFisBarrier | ( | float | barAdd0 | ) | [static] |
the symmetric fission barrier is modified by adding this quantity
barAdd0 | barrier adjestment in MeV |
void CNucleus::setBarWidth | ( | float | width | ) | [static] |
set the parameter controlling the width of the barrier distribution
width | - width is ![]() |
void CNucleus::setBohrWheeler | ( | ) | [static] |
Calculations use BohrWheeler fission width This is the default. Alternative is setLestone()
void CNucleus::setCompoundNucleus | ( | double | dEx0, | |
double | dJ0 | |||
) |
Initializes the compound nucleus excitation and spin.
dEx0 | is the compound nucleus excitation energy in MeV | |
dJ0 | is the compound nucleus spin in hbar |
void CNucleus::setCompoundNucleus | ( | double | dEx0, | |
float | fJ0 | |||
) |
Initializes the compound nucleus excitation and spin.
dEx0 | is the compound nucleus excitation energy in MeV | |
fJ0 | is the compound nucleus spin in hbar |
void CNucleus::setCompoundNucleus | ( | float | fEx0, | |
double | dJ0 | |||
) |
Initializes the compound nucleus excitation and spin.
fEx0 | is the compound nucleus excitation energy in MeV | |
dJ0 | is the compound nucleus spin in hbar |
void CNucleus::setCompoundNucleus | ( | float | fEx0, | |
float | fJ0 | |||
) |
Initializes the compound nucleus excitation and spin.
fEx0 | is the compound nucleus excitation energy in MeV | |
fJ0 | is the compound nucleus spin in hbar |
void CNucleus::setDeltaE | ( | float | de0 | ) | [static] |
set the width of the energy bins for integating the Hauser-Feshbach formulism
de0 | with of the energy bin |
void CNucleus::setEvapMode | ( | int | iHF0 = 2 |
) | [static] |
Sets the mode use for evaporation 1 = Hauser-Feshach formalism as in the original GEMINI 0 = widths calculated from Weisskopf, then kinetic energy of particle also from Weisskopf, but spin and orbital angular momentum from Hauser-Feshbach 2 = Switches bewteen options 0 and 1 dependeing of the ratio of rotational to thermal energy. (default)
iHF0 | =0,1,2 |
void CNucleus::setFissionScaleFactor | ( | float | factor | ) | [static] |
sets the fission scale factor
factor | is the scale factor |
void CNucleus::setLestone | ( | ) | [static] |
Calculations use Lestone fission width. the default is the BohrWheeler decay width
void CNucleus::setNewIsotope | ( | int | iZ0, | |
int | iA0, | |||
float | fEx0, | |||
float | fJ0 | |||
) |
can be used to initialize another compound nucleus
iZ0 | is the proton number | |
iA0 | is the mass number | |
fEx0 | is the excitation energy in MeV | |
fJ0 | is the spin in hbar |
void CNucleus::setNoIMF | ( | ) | [static] |
Turns off imf emissions. The default option is IMF emsiion on.
void CNucleus::setSolution | ( | int | isol | ) | [static] |
Set one of the parameter sets
isol | solution number |
void CNucleus::setSpinAxis | ( | CAngle | spin0 | ) |
Sets the angle of the compound nucleus spin axis.
spin0 | is the (theta,phi) angles in radians |
void CNucleus::setSpinAxisDegrees | ( | CAngle | spin0 | ) |
Sets the angle of the compound nucleus spin axis.
spin0 | is the (theta,phi) angles in degrees |
void CNucleus::setThreshold | ( | float | threshold0 | ) | [static] |
sets the threshold used to cut out low probability evaporation channels. All channels will be included if set to zero.
threshold0 | is the threshold |
void CNucleus::setTimeTransient | ( | float | time | ) | [static] |
sets the transient time (fission delay) in zs different from the default value. This is a static function.
void CNucleus::setVelocityCartesian | ( | float | vx = 0. , |
|
float | vy = 0. , |
|||
float | vz = 0. | |||
) |
Sets the velocity of the fragment in cartesian coordinates.
with no input parameter, all components are set to zero.
vx | is x component of velocity in cm/ns | |
vy | is y component of velocity in cm/ns | |
vz | is z component of velocity in cm/ns |
void CNucleus::setVelocityPolar | ( | float | vel = 0. , |
|
float | theta = 0. , |
|||
float | phi = 0. | |||
) |
Sets the velocity of the fragment in polar coordinates
/param vel is velocity in units of cm/ns /param theta is theta angle in radians /param phi is phi angle in radians
void CNucleus::setYesIMF | ( | ) | [static] |
Turns on imf emissions. This is the default option.
void CNucleus::split | ( | CAngle | symmetryCM | ) | [protected] |
Determines the angles and velocities of the daughter fragments when the decay was determined by the transition-state formulism
void CNucleus::vCMofAllProducts | ( | ) |
used to check momentum conservation
prints out the center-of-mass velocity of all decay products
float CNucleus::weiskopf | ( | bool | saddle | ) | [protected] |
Calculated the evaporation decay width of a channel in MeV using the Weisskopf formulism
saddle | bool true=saddleToScission decay false=normal evaporation |