13
13
include 'alfas.inc'
15
15
c parameters used in this routine only
16
Integer sm_flag, prnt_tag, k, ii
16
Integer sm_flag, prnt_tag, k, ii, i_proc
17
17
double precision Oh2, sigv
18
18
double precision total_events, sigmawnSI, sigmawpSI
19
19
double precision sigmawnSD, sigmawpSD
20
20
double precision vID_natural
21
double precision cross_sec_relic(size(process_names)), tot_cross_sec, channel_percent
22
Integer process_relic_name_indexes(size(process_names)), process_index
21
23
character(len=32) outfilename
22
24
c double precision total_cross
128
130
write(33,*) 'sigmaN_SD_n: ', sigma_neutron_SD, ' GeV^-2',
129
131
& ':', sigma_neutron_SD*gevtopb, ' pb'
130
132
write(33,*) 'Nevents: ', Nint(total_events)
131
write(33,*) 'smearing: ', sm_flag
133
write(33,*) 'smearing: ', sm_flag
135
c Compute the relic density channels percentage
136
c loop over all the pairs of DM initial states
137
if (do_relic_density) then
140
do x2=x1,ndmparticles
141
c loop over all the annihilation diagrams for each DM particle pair
142
do x3=1,ann_nprocesses(x1,x2)
143
call get_process_index(x1,x2,x3,1,process_index)
144
process_relic_name_indexes(i_proc) = process_index
145
cross_sec_relic(i_proc) = cross_check_process(x1,x2,x3,1,mdm(1)/x_f,mdm(1)/x_f,1)
148
c loop over all the DM -> DM diagrams for each DM particle pair
149
do x3=1,dm2dm_nprocesses(x1,x2)
150
call get_process_index(x1,x2,x3,2,process_index)
151
process_relic_name_indexes(i_proc) = process_index
152
cross_sec_relic(i_proc) = cross_check_process(x1,x2,x3,2,mdm(1)/x_f,mdm(1)/x_f,1)
158
c Total cross section
160
do i_proc=1, size(cross_sec_relic)
161
tot_cross_sec = tot_cross_sec + cross_sec_relic(i_proc)
165
do i_proc=1, size(cross_sec_relic)
166
channel_percent = 100*cross_sec_relic(i_proc)/tot_cross_sec
167
write(33,*) '%:',process_names(process_relic_name_indexes(i_proc)),' ',channel_percent
134
172
if (do_capture.and.do_direct_detection) then