Changeset 3900 for branches/2013/dev_r3891_METO1_MERCATOR6_OBC_BDY_merge/NEMOGCM/NEMO/OPA_SRC/BDY/bdydyn.F90
- Timestamp:
- 2013-05-03T11:51:52+02:00 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2013/dev_r3891_METO1_MERCATOR6_OBC_BDY_merge/NEMOGCM/NEMO/OPA_SRC/BDY/bdydyn.F90
r3294 r3900 76 76 phur => hur 77 77 phvr => hvr 78 CALL wrk_alloc(jpi,jpj,pu2d,pv2d) 78 CALL wrk_alloc(jpi,jpj,pua2d,pva2d) 79 IF ( nn_dyn2d == 3 .or. nn_dyn3d == 3 ) CALL wrk_alloc(jpi,jpj,pub2d,pvb2d) 79 80 80 81 !------------------------------------------------------- … … 82 83 !------------------------------------------------------- 83 84 84 pu2d(:,:) = 0.e0 85 pv2d(:,:) = 0.e0 85 ! "After" velocities: 86 87 pua2d(:,:) = 0.e0 88 pva2d(:,:) = 0.e0 86 89 DO jk = 1, jpkm1 !! Vertically integrated momentum trends 87 pu 2d(:,:) = pu2d(:,:) + fse3u(:,:,jk) * umask(:,:,jk) * ua(:,:,jk)88 pv 2d(:,:) = pv2d(:,:) + fse3v(:,:,jk) * vmask(:,:,jk) * va(:,:,jk)90 pua2d(:,:) = pua2d(:,:) + fse3u(:,:,jk) * umask(:,:,jk) * ua(:,:,jk) 91 pva2d(:,:) = pva2d(:,:) + fse3v(:,:,jk) * vmask(:,:,jk) * va(:,:,jk) 89 92 END DO 90 pu 2d(:,:) = pu2d(:,:) * phur(:,:)91 pv 2d(:,:) = pv2d(:,:) * phvr(:,:)93 pua2d(:,:) = pua2d(:,:) * phur(:,:) 94 pva2d(:,:) = pva2d(:,:) * phvr(:,:) 92 95 DO jk = 1 , jpkm1 93 ua(:,:,jk) = ua(:,:,jk) - pu 2d(:,:)94 va(:,:,jk) = va(:,:,jk) - pv 2d(:,:)96 ua(:,:,jk) = ua(:,:,jk) - pua2d(:,:) 97 va(:,:,jk) = va(:,:,jk) - pva2d(:,:) 95 98 END DO 99 100 ! "Before" velocities (required for Orlanski condition): 101 102 IF ( nn_dyn2d == 3 .or. nn_dyn3d == 3 ) THEN 103 pub2d(:,:) = 0.e0 104 pvb2d(:,:) = 0.e0 105 DO jk = 1, jpkm1 !! Vertically integrated momentum trends 106 pub2d(:,:) = pub2d(:,:) + fse3u(:,:,jk) * umask(:,:,jk) * ub(:,:,jk) 107 pvb2d(:,:) = pvb2d(:,:) + fse3v(:,:,jk) * vmask(:,:,jk) * vb(:,:,jk) 108 END DO 109 pub2d(:,:) = pub2d(:,:) * phur(:,:) 110 pvb2d(:,:) = pvb2d(:,:) * phvr(:,:) 111 DO jk = 1 , jpkm1 112 ub(:,:,jk) = ub(:,:,jk) - pub2d(:,:) 113 vb(:,:,jk) = vb(:,:,jk) - pvb2d(:,:) 114 END DO 115 END IF 96 116 97 117 !------------------------------------------------------- … … 109 129 110 130 DO jk = 1 , jpkm1 111 ua(:,:,jk) = ( ua(:,:,jk) + pu 2d(:,:) ) * umask(:,:,jk)112 va(:,:,jk) = ( va(:,:,jk) + pv 2d(:,:) ) * vmask(:,:,jk)131 ua(:,:,jk) = ( ua(:,:,jk) + pua2d(:,:) ) * umask(:,:,jk) 132 va(:,:,jk) = ( va(:,:,jk) + pva2d(:,:) ) * vmask(:,:,jk) 113 133 END DO 134 135 IF ( nn_dyn2d == 3 .or. nn_dyn3d == 3 ) THEN 136 DO jk = 1 , jpkm1 137 ub(:,:,jk) = ( ub(:,:,jk) + pub2d(:,:) ) * umask(:,:,jk) 138 vb(:,:,jk) = ( vb(:,:,jk) + pvb2d(:,:) ) * vmask(:,:,jk) 139 END DO 140 END IF 114 141 115 142 CALL wrk_dealloc(jpi,jpj,pu2d,pv2d)
Note: See TracChangeset
for help on using the changeset viewer.