- Timestamp:
- 2017-04-23T09:30:41+02:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2017/dev_r7881_HPC09_ZDF/NEMOGCM/NEMO/NST_SRC/agrif_top_interp.F90
r6140 r7953 1 1 MODULE agrif_top_interp 2 !!====================================================================== 3 !! *** MODULE agrif_top_interp *** 4 !! AGRIF: interpolation package 5 !!====================================================================== 6 !! History : 2.0 ! ??? 7 !!---------------------------------------------------------------------- 2 8 #if defined key_agrif && defined key_top 9 !!---------------------------------------------------------------------- 10 !! 'key_agrif' AGRIF zoom 11 !! 'key_top' on-line tracers 12 !!---------------------------------------------------------------------- 3 13 USE par_oce 4 14 USE oce … … 8 18 USE par_trc 9 19 USE trc 20 ! 10 21 USE lib_mpp 11 22 USE wrk_nemo … … 16 27 PUBLIC Agrif_trc, interptrn 17 28 18 # include "vectopt_loop_substitute.h90"19 29 !!---------------------------------------------------------------------- 20 !! NEMO/NST 3.6 , NEMO Consortium (2010)30 !! NEMO/NST 4.0 , NEMO Consortium (2017) 21 31 !! $Id$ 22 32 !! Software governed by the CeCILL licence (NEMOGCM/NEMO_CeCILL.txt) … … 26 36 SUBROUTINE Agrif_trc 27 37 !!---------------------------------------------------------------------- 28 !! *** ROUTINE Agrif_trc ***38 !! *** ROUTINE Agrif_trc *** 29 39 !!---------------------------------------------------------------------- 30 40 ! 31 41 IF( Agrif_Root() ) RETURN 32 33 Agrif_SpecialValue = 0. e042 ! 43 Agrif_SpecialValue = 0._wp 34 44 Agrif_UseSpecialValue = .TRUE. 35 45 ! 36 46 CALL Agrif_Bc_variable( trn_id, procname=interptrn ) 37 47 Agrif_UseSpecialValue = .FALSE. … … 40 50 41 51 42 SUBROUTINE interptrn(ptab,i1,i2,j1,j2,k1,k2,n1,n2,before,nb,ndir) 43 !!--------------------------------------------- 44 !! *** ROUTINE interptrn *** 45 !!--------------------------------------------- 46 REAL(wp), DIMENSION(i1:i2,j1:j2,k1:k2,n1:n2), INTENT(inout) :: ptab 47 INTEGER, INTENT(in) :: i1,i2,j1,j2,k1,k2,n1,n2 48 LOGICAL, INTENT(in) :: before 49 INTEGER, INTENT(in) :: nb , ndir 50 ! 51 INTEGER :: ji, jj, jk, jn ! dummy loop indices 52 INTEGER :: imin, imax, jmin, jmax 53 REAL(wp) :: zrhox , zalpha1, zalpha2, zalpha3 54 REAL(wp) :: zalpha4, zalpha5, zalpha6, zalpha7 55 LOGICAL :: western_side, eastern_side,northern_side,southern_side 56 57 IF (before) THEN 52 SUBROUTINE interptrn( ptab, i1, i2, j1, j2, k1, k2, n1, n2, before, nb, ndir ) 53 !!---------------------------------------------------------------------- 54 !! *** ROUTINE interptrn *** 55 !!---------------------------------------------------------------------- 56 REAL(wp), DIMENSION(i1:i2,j1:j2,k1:k2,n1:n2), INTENT(inout) :: ptab 57 INTEGER , INTENT(in ) :: i1, i2, j1, j2, k1, k2, n1, n2 58 LOGICAL , INTENT(in ) :: before 59 INTEGER , INTENT(in ) :: nb , ndir 60 !! 61 INTEGER :: ji, jj, jk, jn ! dummy loop indices 62 INTEGER :: imin, imax, jmin, jmax 63 LOGICAL :: western_side, eastern_side,northern_side,southern_side 64 REAL(wp):: zrhox , zalpha1, zalpha2, zalpha3 65 REAL(wp):: zalpha4, zalpha5, zalpha6, zalpha7 66 !!---------------------------------------------------------------------- 67 ! 68 IF( before ) THEN 58 69 ptab(i1:i2,j1:j2,k1:k2,n1:n2) = trn(i1:i2,j1:j2,k1:k2,n1:n2) 59 70 ELSE … … 185 196 186 197 #else 198 !!---------------------------------------------------------------------- 199 !! Empty module no TOP AGRIF 200 !!---------------------------------------------------------------------- 187 201 CONTAINS 188 202 SUBROUTINE Agrif_TOP_Interp_empty … … 193 207 END SUBROUTINE Agrif_TOP_Interp_empty 194 208 #endif 209 210 !!====================================================================== 195 211 END MODULE agrif_top_interp
Note: See TracChangeset
for help on using the changeset viewer.