- Timestamp:
- 2017-01-04T17:47:47+01:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2016/dev_r6519_HPC_4/NEMOGCM/NEMO/OPA_SRC/DIA/diafwb.F90
r7037 r7525 55 55 REAL(wp) :: zarea, zvol, zwei 56 56 REAL(wp) :: ztemi(4), ztemo(4), zsali(4), zsalo(4), zflxi(4), zflxo(4) 57 REAL(wp) :: zt, zs, zu 57 REAL(wp) :: zt, zs, zu 58 58 REAL(wp) :: zsm0, zfwfnew 59 REAL(wp), DIMENSION(:,:) :: ztmp ! 2D workspace 59 60 IF( cp_cfg == "orca" .AND. jp_cfg == 1 .OR. jp_cfg == 2 .OR. jp_cfg == 4 ) THEN 60 61 !!---------------------------------------------------------------------- … … 63 64 ! Mean global salinity 64 65 zsm0 = 34.72654 65 66 66 ! To compute fwf mean value mean fwf 67 67 … … 72 72 a_salb = 0.e0 ! valeur de sal au debut de la simulation 73 73 ! sshb used because diafwb called after tranxt (i.e. after the swap) 74 a_sshb = SUM( e1e2t(:,:) * sshb(:,:) * tmask_i(:,:) ) 74 !$OMP PARALLEL DO schedule(static) private(jj,ji) REDUCTION(+:a_sshb) 75 DO jj = 1, jpj 76 DO ji = 1, jpi 77 ztmp(ji,jj) = e1e2t(ji,jj) * sshb(ji,jj) * tmask_i(ji,jj) 78 a_sshb = a_sshb + ztmp(ji,jj) 79 END DO 80 END DO 75 81 IF( lk_mpp ) CALL mpp_sum( a_sshb ) ! sum over the global domain 76 82 … … 86 92 IF( lk_mpp ) CALL mpp_sum( a_salb ) ! sum over the global domain 87 93 ENDIF 88 89 a_fwf = SUM( e1e2t(:,:) * ( emp(:,:)-rnf(:,:) ) * tmask_i(:,:) ) 94 95 !$OMP PARALLEL DO schedule(static) private(jj,ji) REDUCTION(+:a_fwf) 96 DO jj = 1, jpj 97 DO ji = 1, jpi 98 ztmp(ji,jj) = e1e2t(ji,jj) * ( emp(ji,jj)-rnf(ji,jj) ) * tmask_i(ji,jj) 99 a_fwf = a_fwf + ztmp(ji,jj) 100 END DO 101 END DO 102 90 103 IF( lk_mpp ) CALL mpp_sum( a_fwf ) ! sum over the global domain 91 104 … … 97 110 zfwfnew = 0.e0 98 111 ! Mean sea level at nitend 99 a_sshn = SUM( e1e2t(:,:) * sshn(:,:) * tmask_i(:,:) ) 112 !$OMP PARALLEL DO schedule(static) private(jj,ji) REDUCTION(+:a_sshn) 113 DO jj = 1, jpj 114 DO ji = 1, jpi 115 ztmp(ji,jj) = e1e2t(ji,jj) * sshn(ji,jj) * tmask_i(ji,jj) 116 a_sshn = a_sshn + ztmp(ji,jj) 117 END DO 118 END DO 100 119 IF( lk_mpp ) CALL mpp_sum( a_sshn ) ! sum over the global domain 101 zarea = SUM( e1e2t(:,:) * tmask_i(:,:) ) 120 !$OMP PARALLEL DO schedule(static) private(jj,ji) REDUCTION(+:zarea) 121 DO jj = 1, jpj 122 DO ji = 1, jpi 123 ztmp(ji,jj) = e1e2t(ji,jj) * tmask_i(ji,jj) 124 zarea = zarea + ztmp(ji,jj) 125 END DO 126 END DO 102 127 IF( lk_mpp ) CALL mpp_sum( zarea ) ! sum over the global domain 103 128
Note: See TracChangeset
for help on using the changeset viewer.