84 CNucleus CN(toDecay.
GetZ(), toDecay.
GetA());
107 catch (std::exception&
e) {
108 Info(
"DecaySingleNucleus",
"Caught std::exception: %s",
e.what());
114 Info(
"DecaySingleNucleus",
"Caught unknown exception");
123 Info(
"DecaySingleNucleus",
"Bad Gemini decay (CNucleus::abortEvent=true)");
128 CNucleus* nuc = CN.getProducts(0);
133 N->SetParameter(
"GEMINI_PARENT_INDEX",
part_index);
136 N->SetExcitEnergy(nuc->fEx);
137 float*
v = nuc->getVelocityVector();
140 nuc = CN.getProducts();
202 if (branchname ==
"") branchname =
"gemini";
207 decayProducts->
Clear();
211 catch (exception&
e) {
215 std::cout <<
"\xd" <<
"Gemini++ processing, " << nDecays <<
" decays left ..." << std::flush;
217 std::cout << std::endl;
231 if (z < 19 || z > 111) {
232 Error(
"GetMaxSpinWithFissionBarrier",
"Only use for 19<=Z<=111");
235 float amin = 1.2 * z + 0.01 *
pow(z, 2);
236 float amax = 5.8 * z - 0.024 *
pow(z, 2);
238 if (a < amin || a > amax) {
239 Error(
"GetMaxSpinWithFissionBarrier",
"Only valid for Z=%d with %d<=A<=%d",
240 z, (
int)amin, (
int)amax);
243 return CYrast::instance()->getJmaxSierk(z,
a);
254 return CYrast::instance()->getBarrierFissionRLDM(z,
a, J);
265 return CYrast::instance()->getBarrierFissionSierk(0.);
ClassImp(KVPartitionList) void KVPartitionList
Initialisation.
double pow(double, double)
Base class for KaliVeda framework.
virtual void Clear(Option_t *opt="")
static void MakeEventBranch(TTree *tree, const TString &branchname, const TString &classname, T &event, Int_t bufsize=10000000)
KVNucleus * AddParticle()
void FillTreeWithEvents(KVSimNucleus &, bool, Int_t, TTree *, TString branchname="")
void DecaySingleNucleus(KVSimNucleus &, KVSimEvent *, bool)
Float_t GetMaxSpinWithFissionBarrier(int, int)
Float_t GetFissionBarrierSierk(int z, int a)
Return Sierk fission barrier for zero angular momentum.
Float_t GetFissionBarrierRLDM(int z, int a, float J)
Return Rotating Liquid Drop Model fission barrier for given spin in hbar units.
virtual ~KVGemini()
Destructor.
void DecayEvent(const KVSimEvent *, KVSimEvent *, bool)
Description of properties and kinematics of atomic nuclei.
Double_t GetExcitEnergy() const
Int_t GetZ() const
Return the number of proton / atomic number.
TVector3 GetVelocity() const
returns velocity vector in cm/ns units
Container class for simulated nuclei, KVSimNucleus.
Nucleus in a simulated event.
const TVector3 * GetAngMom() const
virtual void Error(const char *method, const char *msgfmt,...) const
virtual void Info(const char *method, const char *msgfmt,...) const
Exception(s) thrown by KVGemini.