- consider
lorentzian
electric dipole strengths only! - consider
isovector
data only! - consider only the tin (Sn) isotopes,
proton_number = 50
!
ztes_lorvec.out: T = 0.0
ftes_lorvec.out: T = 0.5, 1.0, 2.0
sample [zf]tes_lorvec.out file
#RPA-results:
#Nucleus: SN 132
#Excitation: 1 -
...
#Real part: -1.797451e-13
#Parameterset: DD-ME2
#natural parity: yes
#Isovector result:
#width: 1.000000e+00
#maximum value: 9.166250e+00
#at energy: 1.523000e+01
0.000000e+00 0.000000e+00
1.000000e-02 2.881808e-02
-
the first column (energies) goes from
0
up to50
MeV in increments of0.01
MeV:np.linspace(0, 50, 5001, retstep=True)
-
TALYS
contains the tabulated microscopic gamma-ray strength functions computed according to HF-QRPA [see manual, page 143]:
sample structure/gamma/hfb/Sn.psf
Z= 50 A= 90
U[MeV] fE1[mb/MeV]
0.100 6.291E-03
0.200 6.776E-03
..... .........
Z= 50 A= 91
U[MeV] fE1[mb/MeV]
0.100 6.350E-03
0.200 6.840E-03
..... .........
...
- the energy axis
U
goes from0.1
up to30
MeV in increments of0.1
MeV:np.linspace(0.1, 30, 300, retstep=True)
- the file contains tin (Z=
50
) isotopes with masses from A=90
to A=178
, with a gap from A =171
to A =177
; in total there are 82 isotopes in this file
The rpa
project workflow for generating each job's photon strength function (.psf
) file, which is then passed to TALYS
, is as follows:
st=>start: structure/gamma/hfb/Sn.psf
e=>end: talys_df
op=>operation: talys.api.fn_to_dict()
op2=>operation: talys.api.dict_to_df()
st->op->op2->e
st=>start: [zf]tes_lorvec.out
e=>end: lorvec_df
op=>operation: talys.api.lorvec_to_df()
st->op->e
st=>start: talys.api.replace_table(talys_df, lorvec_df)
e=>end: ${job._id}/Sn.psf
op=>operation: talys.api.df_to_dict()
op2=>operation: talys.api.dict_to_fn()
st->op->op2->e
Of particular interest here is the function mypackage.talys.api.lorvec_to_df()
, which has the following diagram:
st=>start: read columns E and R from [zf]tes_lorvec.out
op=>operation: R = R * 4.022 mb / (e^2 * fm^2)
op2=>operation: select E between 0.1 and 30 MeV
op3=>operation: keep only every 10th row
e=>end: return dataframe
st->op->op2->op3->e
sample astrorate.g
# Reaction rate for 139Sn(n,g)
# T Rate MACS
0.0001 6.09702E+05 6.09702E+05
0.0005 4.01579E+05 4.01579E+05
...... ........... ...........
9.0000 8.01139E+02 8.01139E+02
10.0000 2.96834E+02 2.96834E+02
sample rp050140.tot
# n + 139Sn: Production of 140Sn - Total
# Q-value = 3.16732E+00 mass= 139.963146
# E-threshold= 0.00000E+00
# # energies = 88
# E xs
1.00000E-11 1.87949E+03
2.53000E-08 3.73663E+01
........... ...........
2.90000E+01 1.05665E-01
3.00000E+01 9.39864E-02
- the energy grid
E
is given as an input file,n0-30.grid
proton_number | neutron_number | mass_number | model | temperature | excitation_energy | neutron_energy | strength_function_fm | strength_function_mb | cross_section | capture_rate |
---|
temperature | nuclear state | model |
---|---|---|
0 | ground | RHB |
> 0 | ground | FTRMF |
0 | excited | QRPA |
> 0 | excited | FTRPA |
- TALYS:
HF-QRPA
?
Step 0 involves building the required dataframe which should hold everything needed below.
- Select
niso
isotopes, eg.isotopes = (76, 86, 96)
,niso = 3
and a set ofntemp
temperatures, eg.temperatures = (0.0, 1.0, 2.0)
,ntemp = 3
- For each isotope in
isotopes
, plot one figure withntemp
curves, showing all thetemperatures
; each figure depicts the variation of the electric dipole transition strengthR
[e${}^{2}$ fm${}^{2}$/MeV] vsE
[MeV];niso
figures total - For each temperature in
temperatures
, plot one figure withniso
curves, showing all theisotopes
; each figure depicts the variation of the electric dipole transition strengthR
[e${}^{2}$ fm${}^{2}$/MeV] vsE
[MeV];ntemp
figures total - Repeat steps 2&3, after converting the transition strength
R
[e${}^{2}$ fm${}^{2}$/MeV] tofE1
[mb/MeV]; - Repeat steps 2-4, for the neutron production
cross-section
[mb] instead offE1
[mb/MeV]; - Plot the neutron
capture rate
versus mass numberA
, resulting in one figure withntemp
curves; - Plot the neutron
capture rate
versus temperatureT
, resulting in one figure withniso
curves; the temperature axis only hasntemp
points;
- each plot should take a
type
argument, with possible valueslin-lin
,log-log
,log-lin
(log on Y axis),lin-log
(log on X axis) - each plot should take the limits of the energy axis, defaulting to
[0.1, 10]
MeV - each plot should have an optional
include_talys
argument, defaulting toFalse
- each plot should operate on (and return)
Axes
instances - add model to pcolormesh plot
-
Do the analysis of particle-hole (p-h) transition components for some low-lying states of N=76,86,96. How to select these low-lying states: below E=10 MeV, find one or two discrete states with highest transition strength.
-
Create new branch for new neutron capture (NC) figure. Do the calculations of neutron capture rates at T=1&2MeV but with E1 strength function at T=0MeV (from RHB+QRPA). Plot on the existing NC rates figure.
- Q about
TALYS
result: why neutron capture rate is decreasing with increasing temperature?