JHUGen MELA  v2.4.1
Matrix element calculations as used in JHUGen. MELA is an important tool that was used for the Higgs boson discovery and for precise measurements of its structure and interactions. Please see the website https://spin.pha.jhu.edu/ and papers cited there for more details, and kindly cite those papers when using this code.
Functions/Subroutines | Variables
coli_aux2 Module Reference

Functions/Subroutines

subroutine initcoli_in_collier
 
subroutine initerrcnt_coli (val)
 
subroutine initcritpointscnt_coli (val)
 
subroutine seterrflag_coli (err)
 
subroutine geterrflag_coli (err)
 
subroutine setnerrout_coli (nerrout)
 
subroutine setncpout_coli (ncpout)
 
subroutine setninfout_coli (ninfout)
 
subroutine setnstatsout_coli (nstatsout)
 
subroutine setmaxerrout_coli (errmax)
 
subroutine seterroutlev_coli (erroutlev)
 
subroutine errout_coli (sub, err, flag)
 
subroutine critpointsout_coli (sub, acc)
 
subroutine setmode_coli (mode)
 
subroutine setprec_coli (dprec)
 
subroutine setacc_coli (reqacc, critacc)
 
subroutine setreqacc_coli (reqacc)
 
subroutine setcritacc_coli (critacc)
 
subroutine setritmax_coli (ritmax_B, ritmax_C, ritmax_D)
 

Variables

integer nerrout_coli =6
 
integer ninfout_coli =6
 
integer ncpout_coli
 
integer nstatsout_coli
 
integer errflag_coli
 
integer errcnt_coli
 
integer critpointscnt_coli
 
integer erroutlev_coli
 
integer maxerrout_coli =100
 
integer stdout_coli =6
 
integer mode_coli =0
 
integer closed_coli =-999
 
double precision dprec_coli
 
double precision reqacc_coli
 
double precision critacc_coli
 
double precision acc_inf
 
double precision acc_def_b
 
double precision acc_def_c0
 
double precision acc_def_d0
 
double precision acc_req_c
 
double precision acc_req_d
 
double precision acc_req_cind
 
double precision impest_d =1d1
 
double precision impest_c =1d1
 
integer rmax_b
 
integer rmax_c
 
integer rmax_d
 
logical inflev_coli
 

Function/Subroutine Documentation

◆ critpointsout_coli()

subroutine coli_aux2::critpointsout_coli ( character(len=*), intent(in)  sub,
double precision, intent(in)  acc 
)

Definition at line 338 of file coli_aux2.F90.

338 
339  character(len=*), intent(in) :: sub
340  double precision, intent(in) :: acc
341  integer :: i
342 
343 #include "common_coli.h"
344 
345  critpointscnt_coli = critpointscnt_coli + 1
346 
347  write(ncpout_coli,*)
348  write(ncpout_coli,*)
349  write(ncpout_coli,*)
350  write(ncpout_coli,*) '***********************************************************'
351  write(ncpout_coli,*) 'Critical Point NO.', critpointscnt_coli
352  write(ncpout_coli,*) 'in integral: ', trim(sub)
353  write(ncpout_coli,*) 'estimated accuracy: ', acc
354  write(ncpout_coli,*) '-----------------------------------------------------------'
355  write(ncpout_coli,*) 'GLOBAL PARAMETERS:'
356  write(ncpout_coli,*) 'muUV2 = ', muuv2
357  write(ncpout_coli,*) 'muIR2 = ', muir2
358 #ifdef SING
359  write(ncpout_coli,*) 'deltaUV = ', deltauv
360  write(ncpout_coli,*) 'deltaIR1 = ', delta1ir
361  write(ncpout_coli,*) 'deltaIR2 = ', delta2ir
362 #endif
363  write(ncpout_coli,*) 'nminf = ', ncoliminf
364  do i=1,ncoliminf
365  write(ncpout_coli,*) 'minf2 = ', i, coliminf2(i)
366  end do
367  write(ncpout_coli,*) 'dprec = ', dprec_coli
368  write(ncpout_coli,*) 'reqacc = ', reqacc_coli
369  write(ncpout_coli,*) 'critacc = ', critacc_coli
370  write(ncpout_coli,*) 'ErrFlag = ', errflag_coli
371 ! write(ncpout_coli,*) '------------------------------------------------------------'
372  call writemaster_cll(ncpout_coli)
373 

◆ errout_coli()

subroutine coli_aux2::errout_coli ( character(len=*), intent(in)  sub,
character(len=*), intent(in)  err,
logical, intent(out)  flag 
)

Definition at line 297 of file coli_aux2.F90.

297 
298  character(len=*), intent(in) :: sub, err
299 ! integer, parameter :: maxErrOut=100
300  logical, intent(out) :: flag
301 
302  flag = .false.
303  if(erroutlev_coli.eq.0) return
304 
305  errcnt_coli = errcnt_coli + 1
306  if (errcnt_coli.le.maxerrout_coli) then
307  write(nerrout_coli,*)
308  write(nerrout_coli,*)
309  write(nerrout_coli,*)
310  write(nerrout_coli,*) '***********************************************************'
311  write(nerrout_coli,*) 'ERROR NO.', errcnt_coli
312  write(nerrout_coli,*) 'in routine: ', trim(sub)
313  write(nerrout_coli,*) trim(err)
314  call writemaster_cll(nerrout_coli)
315  flag = .true.
316  elseif (errcnt_coli.eq.maxerrout_coli+1) then
317  write(nerrout_coli,*)
318  write(nerrout_coli,*)
319  write(nerrout_coli,*)
320  write(nerrout_coli,*) '***********************************************************'
321  write(nerrout_coli,*)
322  write(nerrout_coli,*) ' Further output of Errors will be suppressed '
323  write(nerrout_coli,*)
324  endif
325 

◆ geterrflag_coli()

subroutine coli_aux2::geterrflag_coli ( integer, intent(out)  err)

Definition at line 155 of file coli_aux2.F90.

155 
156  integer, intent(out) :: err
157 
158  err = errflag_coli
159 

◆ initcoli_in_collier()

subroutine coli_aux2::initcoli_in_collier

Definition at line 51 of file coli_aux2.F90.

51 
52  implicit none
53 ! logical init
54 !
55 ! data init /.false./
56 ! save init
57 !
58 ! if (init) return
59 ! init = .true.
60 
61  ! scale factor for *small* masses masses
62  call setminfscale2_coli(1d0)
63 #ifdef SING
64  ! shift of mass-singular squared logarithms
65  call setshiftms2_coli(0d0)
66 #endif
67 
68 
69  ! estimate of CPU precision
70  ! calacc = dprec_coli
71  ! infinitesimal parameter
72  ! eps = dprec_coli/4d0
73  ! size of imaginary parts below which explicit ieps take over
74  ! impacc = dprec_coli/4d4
75  ! done via GetCPUprec_cll
76  ! call setprecpars_coli(dprec_coli)
77 
78  ! infinitesimal accuracy
79  acc_inf = 1d40
80 
81 ! acc_min_C = 1d0
82 ! acc_min_D = 1d0
83 
84 

◆ initcritpointscnt_coli()

subroutine coli_aux2::initcritpointscnt_coli ( integer, intent(in)  val)

Definition at line 112 of file coli_aux2.F90.

112 
113  integer, intent(in) :: val
114 
115  critpointscnt_coli = val
116 

◆ initerrcnt_coli()

subroutine coli_aux2::initerrcnt_coli ( integer, intent(in)  val)

Definition at line 95 of file coli_aux2.F90.

95 
96  integer, intent(in) :: val
97 
98  errcnt_coli = val
99 

◆ setacc_coli()

subroutine coli_aux2::setacc_coli ( double precision, intent(in)  reqacc,
double precision, intent(in)  critacc 
)

Definition at line 445 of file coli_aux2.F90.

445 
446  double precision, intent(in) :: reqacc,critacc
447 
448  reqacc_coli = reqacc
449  acc_req_c = reqacc
450  acc_req_cind = reqacc/1d1
451  acc_req_d = reqacc
452 
453  critacc_coli = critacc
454 
455  if(inflev_coli.and.ninfout_coli.ne.closed_coli)then
456  write(ninfout_coli,*) 'COLI: reqacc_coli set to = ',reqacc_coli
457  write(ninfout_coli,*) 'COLI: critacc_coli set to = ',critacc_coli
458  endif
459 

◆ setcritacc_coli()

subroutine coli_aux2::setcritacc_coli ( double precision, intent(in)  critacc)

Definition at line 496 of file coli_aux2.F90.

496 
497  double precision, intent(in) :: critacc
498 
499  critacc_coli = critacc
500 
501  if(inflev_coli.and.ninfout_coli.ne.closed_coli)then
502  write(ninfout_coli,*) 'COLI: critacc_coli set to = ',critacc_coli
503  endif
504 

◆ seterrflag_coli()

subroutine coli_aux2::seterrflag_coli ( integer, intent(in)  err)

Definition at line 138 of file coli_aux2.F90.

138 
139  integer, intent(in) :: err
140 
141  errflag_coli = err
142 

◆ seterroutlev_coli()

subroutine coli_aux2::seterroutlev_coli ( integer, intent(in)  erroutlev)

Definition at line 277 of file coli_aux2.F90.

277 
278  integer, intent(in) :: erroutlev
279 
280  erroutlev_coli = erroutlev
281 
282 

◆ setmaxerrout_coli()

subroutine coli_aux2::setmaxerrout_coli ( integer, intent(in)  errmax)

Definition at line 256 of file coli_aux2.F90.

256 
257  integer, intent(in) :: errmax
258 
259  maxerrout_coli = errmax
260 
261  if(inflev_coli.and.ninfout_coli.ne.closed_coli)then
262  write(ninfout_coli,*) 'COLI: maxErrOut_coli set to = ',maxerrout_coli
263  endif
264 

◆ setmode_coli()

subroutine coli_aux2::setmode_coli ( integer, intent(in)  mode)

Definition at line 389 of file coli_aux2.F90.

389 
390  integer, intent(in) :: mode
391 
392  mode_coli = mode
393  if(mode.lt.1) then
394  impest_c = 1d1
395  impest_d = 1d1
396  else
397  impest_c = 1d0
398  impest_d = 1d0
399  end if
400 
401  if(inflev_coli.and.ninfout_coli.ne.closed_coli)then
402  write(ninfout_coli,*) 'COLI: Mode_coli set to = ',mode_coli
403  endif
404 

◆ setncpout_coli()

subroutine coli_aux2::setncpout_coli ( integer, intent(in)  ncpout)

Definition at line 193 of file coli_aux2.F90.

193 
194  integer, intent(in) :: ncpout
195 
196  ncpout_coli = ncpout
197 
198  if(inflev_coli.and.ninfout_coli.ne.closed_coli)then
199  write(ninfout_coli,*) 'COLI: ncpout_coli set to = ',ncpout_coli
200  endif
201 

◆ setnerrout_coli()

subroutine coli_aux2::setnerrout_coli ( integer, intent(in)  nerrout)

Definition at line 172 of file coli_aux2.F90.

172 
173  integer, intent(in) :: nerrout
174 
175  nerrout_coli = nerrout
176 
177  if(inflev_coli.and.ninfout_coli.ne.closed_coli)then
178  write(ninfout_coli,*) 'COLI: nerrout_coli set to = ',nerrout_coli
179  endif
180 

◆ setninfout_coli()

subroutine coli_aux2::setninfout_coli ( integer, intent(in)  ninfout)

Definition at line 214 of file coli_aux2.F90.

214 
215  integer, intent(in) :: ninfout
216 
217  ninfout_coli = ninfout
218 
219  if(inflev_coli.and.ninfout_coli.ne.closed_coli)then
220  write(ninfout_coli,*) 'COLI: ninfout_coli set to = ',ninfout_coli
221  endif
222 

◆ setnstatsout_coli()

subroutine coli_aux2::setnstatsout_coli ( integer, intent(in)  nstatsout)

Definition at line 235 of file coli_aux2.F90.

235 
236  integer, intent(in) :: nstatsout
237 
238  nstatsout_coli = nstatsout
239 
240  if(inflev_coli.and.ninfout_coli.ne.closed_coli)then
241  write(ninfout_coli,*) 'COLI: nstatsout_coli set to = ',nstatsout_coli
242  endif
243 

◆ setprec_coli()

subroutine coli_aux2::setprec_coli ( double precision, intent(in)  dprec)

Definition at line 417 of file coli_aux2.F90.

417 
418  double precision, intent(in) :: dprec
419 
420  dprec_coli = dprec
421 
422 ! adapted to precision of D0 and C0
423  acc_def_b = dprec_coli
424  acc_def_c0 = 1d1*dprec_coli
425  acc_def_d0 = 1d1*dprec_coli
426 
427  call setprecpars_coli(dprec)
428 
429  if(inflev_coli.and.ninfout_coli.ne.closed_coli)then
430  write(ninfout_coli,*) 'COLI: dprec_coli set to = ',dprec_coli
431  endif
432 

◆ setreqacc_coli()

subroutine coli_aux2::setreqacc_coli ( double precision, intent(in)  reqacc)

Definition at line 472 of file coli_aux2.F90.

472 
473  double precision, intent(in) :: reqacc
474 
475  reqacc_coli = reqacc
476  acc_req_c = reqacc
477  acc_req_cind = reqacc/1d1
478  acc_req_d = reqacc
479 
480  if(inflev_coli.and.ninfout_coli.ne.closed_coli)then
481  write(ninfout_coli,*) 'COLI: reqacc_coli set to = ',reqacc_coli
482  endif
483 

◆ setritmax_coli()

subroutine coli_aux2::setritmax_coli ( integer, intent(in)  ritmax_B,
integer, intent(in)  ritmax_C,
integer, intent(in)  ritmax_D 
)

Definition at line 517 of file coli_aux2.F90.

517 
518  integer, intent(in) :: ritmax_B,ritmax_C, ritmax_D
519 
520  if (ritmax_d.lt.6) then
521  if(inflev_coli.and.ninfout_coli.ne.closed_coli)then
522  write(ninfout_coli,*) 'COLI: SetRitmax_coli'
523  write(ninfout_coli,*) 'rmax_D has to be at least 6 --> it is set to 6'
524  end if
525  rmax_d = 6
526  else
527  rmax_d = ritmax_d
528  if(inflev_coli.and.ninfout_coli.ne.closed_coli)then
529  write(ninfout_coli,*) 'COLI: rmax_D set to = ',rmax_d
530  endif
531  end if
532 
533  if (ritmax_c.le.rmax_d) then
534  if(inflev_coli.and.ninfout_coli.ne.closed_coli)then
535  write(ninfout_coli,*) 'COLI: SetRitmax_coli'
536  write(ninfout_coli,*) 'rmax_C has to be larger than rmax_D --> it is set to rmax_D+1'
537  end if
538  rmax_c = rmax_d+1
539  else
540  rmax_c = ritmax_c
541  if(inflev_coli.and.ninfout_coli.ne.closed_cll)then
542  write(ninfout_coli,*) 'COLI: rmax_C set to = ',rmax_c
543  endif
544  end if
545 
546  if (ritmax_b.le.rmax_c) then
547  if(inflev_coli.and.ninfout_coli.ne.closed_coli)then
548  write(ninfout_coli,*) 'COLI: SetRitmax_coli'
549  write(ninfout_coli,*) 'rmax_B has to be larger than rmax_C --> it is set to rmax_C+1'
550  end if
551  rmax_b = rmax_c+1
552  else
553  rmax_b = ritmax_b
554  if(inflev_coli.and.ninfout_coli.ne.closed_coli)then
555  write(ninfout_coli,*) 'COLI: rmax_B set to = ',rmax_b
556  endif
557  end if
558 
559 

Variable Documentation

◆ acc_def_b

double precision coli_aux2::acc_def_b

Definition at line 35 of file coli_aux2.F90.

◆ acc_def_c0

double precision coli_aux2::acc_def_c0

Definition at line 35 of file coli_aux2.F90.

◆ acc_def_d0

double precision coli_aux2::acc_def_d0

Definition at line 35 of file coli_aux2.F90.

◆ acc_inf

double precision coli_aux2::acc_inf

Definition at line 35 of file coli_aux2.F90.

35  double precision :: acc_inf, acc_def_B, acc_def_C0, acc_def_D0

◆ acc_req_c

double precision coli_aux2::acc_req_c

Definition at line 36 of file coli_aux2.F90.

36  double precision :: acc_req_C, acc_req_D, acc_req_CinD

◆ acc_req_cind

double precision coli_aux2::acc_req_cind

Definition at line 36 of file coli_aux2.F90.

◆ acc_req_d

double precision coli_aux2::acc_req_d

Definition at line 36 of file coli_aux2.F90.

◆ closed_coli

integer coli_aux2::closed_coli =-999

Definition at line 32 of file coli_aux2.F90.

◆ critacc_coli

double precision coli_aux2::critacc_coli

Definition at line 33 of file coli_aux2.F90.

◆ critpointscnt_coli

integer coli_aux2::critpointscnt_coli

Definition at line 30 of file coli_aux2.F90.

◆ dprec_coli

double precision coli_aux2::dprec_coli

Definition at line 33 of file coli_aux2.F90.

33  double precision :: dprec_coli, reqacc_coli, critacc_coli

◆ errcnt_coli

integer coli_aux2::errcnt_coli

Definition at line 30 of file coli_aux2.F90.

◆ errflag_coli

integer coli_aux2::errflag_coli

Definition at line 30 of file coli_aux2.F90.

30  integer :: errflag_coli,ErrCnt_coli,CritPointsCnt_coli,erroutlev_coli

◆ erroutlev_coli

integer coli_aux2::erroutlev_coli

Definition at line 30 of file coli_aux2.F90.

◆ impest_c

double precision coli_aux2::impest_c =1d1

Definition at line 37 of file coli_aux2.F90.

◆ impest_d

double precision coli_aux2::impest_d =1d1

Definition at line 37 of file coli_aux2.F90.

37  double precision :: impest_D=1d1, impest_c=1d1

◆ inflev_coli

logical coli_aux2::inflev_coli

Definition at line 39 of file coli_aux2.F90.

39  logical :: InfLev_coli

◆ maxerrout_coli

integer coli_aux2::maxerrout_coli =100

Definition at line 31 of file coli_aux2.F90.

31  integer :: MaxErrOut_coli=100

◆ mode_coli

integer coli_aux2::mode_coli =0

Definition at line 32 of file coli_aux2.F90.

◆ ncpout_coli

integer coli_aux2::ncpout_coli

Definition at line 29 of file coli_aux2.F90.

◆ nerrout_coli

integer coli_aux2::nerrout_coli =6

Definition at line 29 of file coli_aux2.F90.

29  integer :: nerrout_coli=6,ninfout_coli=6,ncpout_coli,nstatsout_coli

◆ ninfout_coli

integer coli_aux2::ninfout_coli =6

Definition at line 29 of file coli_aux2.F90.

◆ nstatsout_coli

integer coli_aux2::nstatsout_coli

Definition at line 29 of file coli_aux2.F90.

◆ reqacc_coli

double precision coli_aux2::reqacc_coli

Definition at line 33 of file coli_aux2.F90.

◆ rmax_b

integer coli_aux2::rmax_b

Definition at line 38 of file coli_aux2.F90.

38  integer :: rmax_B, rmax_C, rmax_D

◆ rmax_c

integer coli_aux2::rmax_c

Definition at line 38 of file coli_aux2.F90.

◆ rmax_d

integer coli_aux2::rmax_d

Definition at line 38 of file coli_aux2.F90.

◆ stdout_coli

integer coli_aux2::stdout_coli =6

Definition at line 32 of file coli_aux2.F90.

32  integer :: stdout_coli=6,mode_coli=0,closed_coli=-999