diff --git a/fuk95/mod_fuk95.F90 b/fuk95/mod_fuk95.F90 index 85c69754..5bc0e64e 100644 --- a/fuk95/mod_fuk95.F90 +++ b/fuk95/mod_fuk95.F90 @@ -328,7 +328,7 @@ subroutine ictsz_fuk95 ! Set layer velocity. call xctilr(z, 1, kk + 1, 1, 1, halo_ps) - !$omp parallel do private(k, l, i, zm) + !$omp parallel do private(k, l, i, x, zm) do j = 1, jj do k = 1, kk - 1 do l = 1, isv(j) diff --git a/meson.build b/meson.build index 75cff620..0d1ac409 100644 --- a/meson.build +++ b/meson.build @@ -28,6 +28,9 @@ elif fcc.get_id() == 'intel' '-init=snan,arrays', '-fpe0','-ftrapuv'], language: 'fortran') endif + if get_option('buildtype') == 'release' + add_project_arguments('-fp-model precise'.split(),language: 'fortran') + endif if get_option('processors') == 1 and get_option('grid') == 'channel' add_project_arguments('-mcmodel=medium', language: 'fortran') endif diff --git a/phy/rdlim.F b/phy/rdlim.F index a71a1beb..4ecfed6f 100644 --- a/phy/rdlim.F +++ b/phy/rdlim.F @@ -866,7 +866,7 @@ subroutine rdlim nstep2=nday2*nstep_in_day c if (csdiag) then - nstep2=nstep1+2 + nstep2=nstep1+5 endif c endif @@ -905,7 +905,6 @@ subroutine rdlim c if (GLB_AVEPERIO(n).lt.0) then diagfq_phy(n)=-real(nstep_in_day)/GLB_AVEPERIO(n) - write (*,*) 'diagfq',diagfq_phy(n) else diagfq_phy(n)=nstep_in_day*max(1,GLB_AVEPERIO(n)) endif