diff --git a/source/f90/fcat-analysis/boson_all-fcat.f90 b/source/f90/fcat-analysis/boson_all-fcat.f90 index 9660331173343b39074468615627e9a0d67cf804..37b41d67ad0a1cc05f0f1e845d0a49648e96bf02 100644 --- a/source/f90/fcat-analysis/boson_all-fcat.f90 +++ b/source/f90/fcat-analysis/boson_all-fcat.f90 @@ -132,6 +132,7 @@ program boson stop call FCAT_boson_all_rep() end program boson + subroutine change_working_dir() ! This routine gets the first argument of the commandline and takes it @@ -168,6 +169,7 @@ subroutine change_working_dir() call FCAT_boson_all(55) return end subroutine change_working_dir + double precision function respon(w, width) !******************************************************************* @@ -206,8 +208,7 @@ double precision function respon(w, width) return call FCAT_boson_all_rep() end function respon -module sicot_mod -contains + subroutine sicot(f, m, h, x0) ! ******************************************************************* @@ -236,8 +237,6 @@ subroutine sicot(f, m, h, x0) ! * * ! ******************************************************************* - use sintr_mod - implicit none double precision, intent(in out) :: f(*) @@ -250,6 +249,14 @@ subroutine sicot(f, m, h, x0) logical :: debug + interface + subroutine sintr(f, msign, h) + double precision, intent(in out) :: f(*) + integer, intent(in) :: msign + double precision, intent(in) :: h + end subroutine sintr + end interface + call FCAT_boson_all(67) debug = .false. call FCAT_boson_all(68) @@ -351,9 +358,7 @@ subroutine sicot(f, m, h, x0) call FCAT_boson_all(109) return end subroutine sicot -end module sicot_mod -module sintr_mod -contains + subroutine sintr(f, msign, h) ! ******************************************************************* @@ -688,9 +693,7 @@ subroutine sintr(f, msign, h) call FCAT_boson_all(246) return end subroutine sintr -end module sintr_mod -module rcffi_mod -contains + subroutine rcffi(ar, ai, msign, h) ! ******************************************************************* @@ -993,7 +996,7 @@ subroutine rcffi(ar, ai, msign, h) call FCAT_boson_all(367) return end subroutine rcffi -end module rcffi_mod + subroutine doboson(t, width, gauss, asym, emin, emax, wmin, wmax, np, p, xout, yout, nout) ! ******************************************************************* @@ -1018,10 +1021,6 @@ subroutine doboson(t, width, gauss, asym, emin, emax, wmin, wmax, np, p, xout, y ! * nout: Number of points of this computation * ! ******************************************************************* - use rcffi_mod - use sicot_mod - use sintr_mod - implicit none double precision, intent(in) :: t, width, gauss, asym, emin, emax, wmin @@ -1047,6 +1046,26 @@ subroutine doboson(t, width, gauss, asym, emin, emax, wmin, wmax, np, p, xout, y logical :: debug + interface + subroutine rcffi(ar, ai, msign, h) + double precision, intent(in out) :: ar(*) + double precision, intent(in out) :: ai(*) + integer, intent(in) :: msign + double precision, intent(in) :: h + end subroutine rcffi + subroutine sicot(f, m, h, x0) + double precision, intent(in out) :: f(*) + integer, intent(in) :: m + double precision, intent(in) :: h + double precision, intent(in) :: x0 + end subroutine sicot + subroutine sintr(f, msign, h) + double precision, intent(in out) :: f(*) + integer, intent(in) :: msign + double precision, intent(in) :: h + end subroutine sintr + end interface + ! remark : the two arrays r1 and r2 are used for fourier ! transforming the user-supplied instrumental response of the ! spectrometer that has to be coded in the external routine @@ -1553,6 +1572,7 @@ subroutine doboson(t, width, gauss, asym, emin, emax, wmin, wmax, np, p, xout, y call FCAT_boson_all(596) return end subroutine doboson + double precision function o1(u) implicit none @@ -1568,6 +1588,7 @@ double precision function o1(u) call FCAT_boson_all(599) return end function o1 + double precision function o2(u) implicit none diff --git a/source/f90/fcat-analysis/boson_all.f90 b/source/f90/fcat-analysis/boson_all.f90 index 67edb5b17e71c08e65b30833f1eaa7a4439d7ff1..cd0ea68866f051b7f43049922d3df679114f0e0d 100644 --- a/source/f90/fcat-analysis/boson_all.f90 +++ b/source/f90/fcat-analysis/boson_all.f90 @@ -83,6 +83,7 @@ program boson deallocate (xout, yout) stop end program boson + subroutine change_working_dir() ! This routine gets the first argument of the commandline and takes it @@ -108,6 +109,7 @@ subroutine change_working_dir() return end subroutine change_working_dir + double precision function respon(w, width) !******************************************************************* @@ -134,8 +136,7 @@ double precision function respon(w, width) endif return end function respon -module sicot_mod -contains + subroutine sicot(f, m, h, x0) ! ******************************************************************* @@ -164,8 +165,6 @@ subroutine sicot(f, m, h, x0) ! * * ! ******************************************************************* - use sintr_mod - implicit none double precision, intent(in out) :: f(*) @@ -178,6 +177,14 @@ subroutine sicot(f, m, h, x0) logical :: debug + interface + subroutine sintr(f, msign, h) + double precision, intent(in out) :: f(*) + integer, intent(in) :: msign + double precision, intent(in) :: h + end subroutine sintr + end interface + debug = .false. if (m == 0) then f(1) = 0.0d0 @@ -234,9 +241,7 @@ subroutine sicot(f, m, h, x0) call sintr(f, msign, h) return end subroutine sicot -end module sicot_mod -module sintr_mod -contains + subroutine sintr(f, msign, h) ! ******************************************************************* @@ -433,9 +438,7 @@ subroutine sintr(f, msign, h) f(1) = 0.0d0 return end subroutine sintr -end module sintr_mod -module rcffi_mod -contains + subroutine rcffi(ar, ai, msign, h) ! ******************************************************************* @@ -616,7 +619,7 @@ subroutine rcffi(ar, ai, msign, h) enddo return end subroutine rcffi -end module rcffi_mod + subroutine doboson(t, width, gauss, asym, emin, emax, wmin, wmax, np, p, xout, yout, nout) ! ******************************************************************* @@ -641,10 +644,6 @@ subroutine doboson(t, width, gauss, asym, emin, emax, wmin, wmax, np, p, xout, y ! * nout: Number of points of this computation * ! ******************************************************************* - use rcffi_mod - use sicot_mod - use sintr_mod - implicit none double precision, intent(in) :: t, width, gauss, asym, emin, emax, wmin @@ -670,6 +669,26 @@ subroutine doboson(t, width, gauss, asym, emin, emax, wmin, wmax, np, p, xout, y logical :: debug + interface + subroutine rcffi(ar, ai, msign, h) + double precision, intent(in out) :: ar(*) + double precision, intent(in out) :: ai(*) + integer, intent(in) :: msign + double precision, intent(in) :: h + end subroutine rcffi + subroutine sicot(f, m, h, x0) + double precision, intent(in out) :: f(*) + integer, intent(in) :: m + double precision, intent(in) :: h + double precision, intent(in) :: x0 + end subroutine sicot + subroutine sintr(f, msign, h) + double precision, intent(in out) :: f(*) + integer, intent(in) :: msign + double precision, intent(in) :: h + end subroutine sintr + end interface + ! remark : the two arrays r1 and r2 are used for fourier ! transforming the user-supplied instrumental response of the ! spectrometer that has to be coded in the external routine @@ -945,6 +964,7 @@ subroutine doboson(t, width, gauss, asym, emin, emax, wmin, wmax, np, p, xout, y deallocate (p2) return end subroutine doboson + double precision function o1(u) implicit none @@ -957,6 +977,7 @@ double precision function o1(u) return end function o1 + double precision function o2(u) implicit none diff --git a/source/f90/fcat-analysis/boson_all.f90.fcat-analysis.txt b/source/f90/fcat-analysis/boson_all.f90.fcat-analysis.txt index 8d97d00cae5c70d62dadf278abbdc77ee3f19694..12427b052f10fcf53e349616c1a12f9bc36105e0 100644 --- a/source/f90/fcat-analysis/boson_all.f90.fcat-analysis.txt +++ b/source/f90/fcat-analysis/boson_all.f90.fcat-analysis.txt @@ -83,6 +83,7 @@ program boson 1 deallocate (xout, yout) 1 stop end program boson + subroutine change_working_dir() ! This routine gets the first argument of the commandline and takes it @@ -108,6 +109,7 @@ subroutine change_working_dir() 1 return end subroutine change_working_dir + double precision function respon(w, width) !******************************************************************* @@ -134,8 +136,7 @@ double precision function respon(w, width) *> endif *> return end function respon -module sicot_mod -contains + subroutine sicot(f, m, h, x0) ! ******************************************************************* @@ -164,8 +165,6 @@ subroutine sicot(f, m, h, x0) ! * * ! ******************************************************************* - use sintr_mod - implicit none double precision, intent(in out) :: f(*) @@ -178,6 +177,14 @@ subroutine sicot(f, m, h, x0) logical :: debug + interface + subroutine sintr(f, msign, h) + double precision, intent(in out) :: f(*) + integer, intent(in) :: msign + double precision, intent(in) :: h + end subroutine sintr + end interface + 1 debug = .false. 1 if (m == 0) then *> f(1) = 0.0d0 @@ -234,9 +241,7 @@ subroutine sicot(f, m, h, x0) 1 call sintr(f, msign, h) 1 return end subroutine sicot -end module sicot_mod -module sintr_mod -contains + subroutine sintr(f, msign, h) ! ******************************************************************* @@ -433,9 +438,7 @@ subroutine sintr(f, msign, h) 2 f(1) = 0.0d0 2 return end subroutine sintr -end module sintr_mod -module rcffi_mod -contains + subroutine rcffi(ar, ai, msign, h) ! ******************************************************************* @@ -616,7 +619,7 @@ subroutine rcffi(ar, ai, msign, h) 4095 enddo 1 return end subroutine rcffi -end module rcffi_mod + subroutine doboson(t, width, gauss, asym, emin, emax, wmin, wmax, np, p, xout, yout, nout) ! ******************************************************************* @@ -641,10 +644,6 @@ subroutine doboson(t, width, gauss, asym, emin, emax, wmin, wmax, np, p, xout, y ! * nout: Number of points of this computation * ! ******************************************************************* - use rcffi_mod - use sicot_mod - use sintr_mod - implicit none double precision, intent(in) :: t, width, gauss, asym, emin, emax, wmin @@ -670,6 +669,26 @@ subroutine doboson(t, width, gauss, asym, emin, emax, wmin, wmax, np, p, xout, y logical :: debug + interface + subroutine rcffi(ar, ai, msign, h) + double precision, intent(in out) :: ar(*) + double precision, intent(in out) :: ai(*) + integer, intent(in) :: msign + double precision, intent(in) :: h + end subroutine rcffi + subroutine sicot(f, m, h, x0) + double precision, intent(in out) :: f(*) + integer, intent(in) :: m + double precision, intent(in) :: h + double precision, intent(in) :: x0 + end subroutine sicot + subroutine sintr(f, msign, h) + double precision, intent(in out) :: f(*) + integer, intent(in) :: msign + double precision, intent(in) :: h + end subroutine sintr + end interface + ! remark : the two arrays r1 and r2 are used for fourier ! transforming the user-supplied instrumental response of the ! spectrometer that has to be coded in the external routine @@ -945,6 +964,7 @@ subroutine doboson(t, width, gauss, asym, emin, emax, wmin, wmax, np, p, xout, y 1 deallocate (p2) 1 return end subroutine doboson + double precision function o1(u) implicit none @@ -957,6 +977,7 @@ double precision function o1(u) 297 return end function o1 + double precision function o2(u) implicit none