void KVWilckeReactionParameters::Print() const
{
    printf("-------------------------------------------\n");
    printf("PARAMETERS INDEPENDENT OF BOMBARDING ENERGY\n");
    printf("-------------------------------------------\n\n");
    KVNucleus fus(ZC,AC);
    printf("ATOMIC NUMBERS:   ZP=%3d  ZT=%3d  ZC=%3d (%s)\n", ZP, ZT, ZC, fus.GetSymbol());
    printf("NEUTRON NUMBERS:  NP=%3d  NT=%3d  NC=%3d\n\n", NP, NT, NC);
    printf("AP**1/3=%7.3f AT**1/3=%7.3f\n", pow(AP,THIRD), pow(AT,THIRD));
    printf("REDUCED MASS NUMBER=%6.2f AP+AT=AC=%3d\n\n", MU, AC);
    printf("INTERACTION RADIUS  RINT=%5.2f fm   R0=%5.2f fm\n\n", RINT, R0);
    printf("MATTER HALF-DENSITY RADII [fm]:\n");
    printf("CP=%5.2f CT=%5.2f CT+CP=%5.2f CBAR=%5.2f\n\n", CP, CT, (CP+CT), CBAR);
    printf("EQUIVALENT SHARP SURFACE RADII [fm]:\n");
    printf("RP=%5.2f RT=%5.2f\n\n", RP, RT);
    printf("COULOMB RADII [fm]:\n");
    printf("RCP=%5.2f RCT=%5.2f RC=RCP+RCT=%5.2f\n\n", RCP, RCT, RCTOTAL);
    printf("BSS-COULOMB POTENTIAL [MeV]:\n");
    printf("VC(r)=%5.3f*ZP*ZT/r for r>RC\n", e2_Wilcke);
    printf("VC(r)=V0-K*r**n     for r<RC\n");
    printf("V0=%7.2f MeV  K=%7.5f  n=%5.3f\n",V0, BSS_K, BSS_N);
    printf("VC(RINT)=%6.1f MeV\n\n", VC_RINT);
    printf("FISSION-TKE=%5.0f MeV\n", FISSIONTKE);
    printf("ASYMM. FISSION-TKE=%5.0f MeV\n\n", ASYMMFISSIONTKE);
    printf("LIQUID DROP PARAMETERS:\n");
    printf("GAMMA=%6.3f MeV/fm**2  PROX-FACTOR=%6.2f MeV\n\n", GAMMA, PROXFACTOR);
    printf("FUSION RELATED PARAMETERS:\n");
    printf("R-BARRIER=%5.2f fm  V(RB)=%6.1f MeV\n", RBARRIER, VRB);
    printf("L-CRITICAL=%4.0f HBAR\n", LCRIT);

    printf("-------------------------------------------------------------------------\n");
    printf("EL/u   ELAB  ECM  ECM/VC   k   ETA    LMAX SGMAR SGFUS QP-CM QP-LP  EP-QP\n");
    printf("-------------------------------------------------------------------------\n");
    Double_t e=1;
    Int_t nlines=0;
    while(e<51){
        printf(" %4.1f  %4.0f  %4.0f %5.2f  %4.1f  %5.1f  %4.0f  %4.0f  %4.0f %5.1f %5.1f %4.0f\n",
               e, AP*e, ECM(e), ECM(e)/VC_RINT, k(e), Eta(e), Lmax(&e,0),
               SigmaR(&e,0), SigmaFus(&e,0), TMath::RadToDeg()*QuarterPointAngle(&e,0),
               TMath::RadToDeg()*ProjectileLabQP(e), ProjectileLabEQP(e));
        nlines++;
        if(e<4) e+=1;
        else if(e<12) e+=0.5;
        else if(e<20) e+=1;
        else e+=5;
        if(!(nlines%5)) printf("\n");
    }
    printf("************************************************************************\n");
}
Example #2
0
    void compute(const vle::devs::Time& /* t */)
{
PAR = 0.5 * 0.01 * RG();

Tmean = std::max(0.0, (Tmin() + Tmax()) / 2);

if (SemRec() == 2) {
    SemRecVar = 0;
} else if (SemRec() == 1) {
    SemRecVar = 1;
}

if (SemRecVar() == 0) {
    ST = 0;
    LAI = 0;
} else if (SemRecVar() == 1) {
    ST = ST() + Tmean();
    LAI = std::max(0.0, Lmax() * ((1 / (1 + std::exp(-A() * (ST() - TI())))) -
                                  std::exp(B() * (ST() - Tr()))));
}

U = U(-1) + Eb() * Eimax() * (1 - std::exp(-K() * LAI())) * PAR();

}