Changeset 4739 for branches/2014/dev_r4650_UKMO3_masked_damping/NEMOGCM/TOOLS/DMP_TOOLS/src/make_dmp_file.F90
- Timestamp:
- 2014-08-13T10:46:04+02:00 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2014/dev_r4650_UKMO3_masked_damping/NEMOGCM/TOOLS/DMP_TOOLS/src/make_dmp_file.F90
r4738 r4739 24 24 USE med_red_seas 25 25 USE zoom 26 USE custom 26 27 27 28 IMPLICIT NONE 28 29 INTEGER :: ji, jj, jk ! dummpy loop variables 29 REAL( 8) :: zsdmp, zbdmp ! Surface and bottom damping coeff30 REAL(wp) :: zsdmp, zbdmp ! Surface and bottom damping coeff 30 31 CHARACTER(LEN=200) :: meshfile = 'mesh_mask.nc' ! mesh file 31 CHARACTER(LEN=200) :: outfile = ' dmp_mask.nc' ! output file32 REAL( 8) :: zlat, zlat2, zlat032 CHARACTER(LEN=200) :: outfile = 'resto.nc' ! output file 33 REAL(wp) :: zlat, zlat2, zlat0 33 34 34 35 ! Read namelist … … 55 56 56 57 !Calculate surface and bottom damping coefficients 57 zsdmp = 1. / ( pn_surf * rday )58 zbdmp = 1. / ( pn_bot * rday )58 zsdmp = 1._wp / ( pn_surf * rday ) 59 zbdmp = 1._wp / ( pn_bot * rday ) 59 60 60 61 !Loop through levels and read in tmask for each level as starting point for 61 62 !coefficient array 62 63 DO jk = 1, jpk-1 63 resto(:,:) = 0. 64 resto(:,:) = 0._wp 64 65 65 66 IF (.NOT. (jk == 1 .AND. ln_zero_top_layer) ) THEN … … 83 84 zlat = ABS(gphit(ji,jj)) 84 85 IF ( nn_hdmp <= zlat .AND. zlat <= zlat2 ) THEN 85 resto(ji,jj) = resto(ji,jj) * 0.5 * ( 1.- COS( rpi*(zlat-nn_hdmp)/zlat0 ) )86 resto(ji,jj) = resto(ji,jj) * 0.5_wp * ( 1._wp - COS( rpi*(zlat-nn_hdmp)/zlat0 ) ) 86 87 ELSE IF ( zlat < nn_hdmp ) THEN 87 resto(ji,jj) = 0. 88 resto(ji,jj) = 0._wp 88 89 ENDIF 89 90 END DO … … 98 99 99 100 ! Damping in Med/Red Seas (or local modifications if full field is set) 100 IF (ln_med_red_seas .AND. (cp_cfg == 'orca') ) THEN101 CALL med_red_dmp(resto )101 IF (ln_med_red_seas .AND. (cp_cfg == 'orca') .AND. (.NOT. lzoom)) THEN 102 CALL med_red_dmp(resto, jk, ln_old_31_lev_code) 102 103 ENDIF 103 104 … … 105 106 CALL dtacof_zoom(resto, tmask) 106 107 ENDIF 107 108 109 !Any user modifications can be added in the custom module 110 IF ( ln_custom ) THEN 111 CALL custom_resto( resto ) 112 ENDIF 108 113 ENDIF 109 114
Note: See TracChangeset
for help on using the changeset viewer.