- Timestamp:
- 2017-07-25T19:44:54+02:00 (7 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2017/dev_r8183_ICEMODEL/NEMOGCM/NEMO/LIM_SRC_3/limrhg.F90
r8324 r8373 123 123 REAL(wp) :: zfac_x, zfac_y 124 124 125 REAL(wp), POINTER, DIMENSION(:,:) :: z1_e1t0, z1_e2t0 ! scale factors126 REAL(wp), POINTER, DIMENSION(:,:) :: zp_delt ! P/delta at T points127 ! 128 REAL(wp), POINTER, DIMENSION(:,:) :: zaU , zaV ! ice fraction on U/V points129 REAL(wp), POINTER, DIMENSION(:,:) :: zmU_t, zmV_t ! ice/snow mass/dt on U/V points130 REAL(wp), POINTER, DIMENSION(:,:) :: zmf ! coriolis parameter at T points131 REAL(wp), POINTER, DIMENSION(:,:) :: zTauU_ia , ztauV_ia ! ice-atm. stress at U-V points132 REAL(wp), POINTER, DIMENSION(:,:) :: zspgU , zspgV ! surface pressure gradient at U/V points133 REAL(wp), POINTER, DIMENSION(:,:) :: v_oceU, u_oceV, v_iceU, u_iceV ! ocean/ice u/v component on V/U points134 REAL(wp), POINTER, DIMENSION(:,:) :: zfU , zfV ! internal stresses125 REAL(wp), DIMENSION(jpi,jpj) :: z1_e1t0, z1_e2t0 ! scale factors 126 REAL(wp), DIMENSION(jpi,jpj) :: zp_delt ! P/delta at T points 127 ! 128 REAL(wp), DIMENSION(jpi,jpj) :: zaU , zaV ! ice fraction on U/V points 129 REAL(wp), DIMENSION(jpi,jpj) :: zmU_t, zmV_t ! ice/snow mass/dt on U/V points 130 REAL(wp), DIMENSION(jpi,jpj) :: zmf ! coriolis parameter at T points 131 REAL(wp), DIMENSION(jpi,jpj) :: zTauU_ia , ztauV_ia ! ice-atm. stress at U-V points 132 REAL(wp), DIMENSION(jpi,jpj) :: zspgU , zspgV ! surface pressure gradient at U/V points 133 REAL(wp), DIMENSION(jpi,jpj) :: v_oceU, u_oceV, v_iceU, u_iceV ! ocean/ice u/v component on V/U points 134 REAL(wp), DIMENSION(jpi,jpj) :: zfU , zfV ! internal stresses 135 135 136 REAL(wp), POINTER, DIMENSION(:,:) :: zds ! shear137 REAL(wp), POINTER, DIMENSION(:,:) :: zs1, zs2, zs12 ! stress tensor components138 REAL(wp), POINTER, DIMENSION(:,:) :: zu_ice, zv_ice, zresr ! check convergence139 REAL(wp), POINTER, DIMENSION(:,:) :: zpice ! array used for the calculation of ice surface slope:136 REAL(wp), DIMENSION(jpi,jpj) :: zds ! shear 137 REAL(wp), DIMENSION(jpi,jpj) :: zs1, zs2, zs12 ! stress tensor components 138 REAL(wp), DIMENSION(jpi,jpj) :: zu_ice, zv_ice, zresr ! check convergence 139 REAL(wp), DIMENSION(jpi,jpj) :: zpice ! array used for the calculation of ice surface slope: 140 140 ! ocean surface (ssh_m) if ice is not embedded 141 141 ! ice top surface if ice is embedded 142 REAL(wp), POINTER, DIMENSION(:,:) :: zCorx, zCory ! Coriolis stress array143 REAL(wp), POINTER, DIMENSION(:,:) :: ztaux_oi, ztauy_oi ! Ocean-to-ice stress array144 145 REAL(wp), POINTER, DIMENSION(:,:) :: zswitchU, zswitchV ! dummy arrays146 REAL(wp), POINTER, DIMENSION(:,:) :: zmaskU, zmaskV ! mask for ice presence147 REAL(wp), POINTER, DIMENSION(:,:) :: zfmask, zwf ! mask at F points for the ice148 149 REAL(wp), PARAMETER 150 REAL(wp), PARAMETER 142 REAL(wp), DIMENSION(jpi,jpj) :: zCorx, zCory ! Coriolis stress array 143 REAL(wp), DIMENSION(jpi,jpj) :: ztaux_oi, ztauy_oi ! Ocean-to-ice stress array 144 145 REAL(wp), DIMENSION(jpi,jpj) :: zswitchU, zswitchV ! dummy arrays 146 REAL(wp), DIMENSION(jpi,jpj) :: zmaskU, zmaskV ! mask for ice presence 147 REAL(wp), DIMENSION(jpi,jpj) :: zfmask, zwf ! mask at F points for the ice 148 149 REAL(wp), PARAMETER :: zepsi = 1.0e-20_wp ! tolerance parameter 150 REAL(wp), PARAMETER :: zmmin = 1._wp ! ice mass (kg/m2) below which ice velocity equals ocean velocity 151 151 !!------------------------------------------------------------------- 152 153 CALL wrk_alloc( jpi,jpj, z1_e1t0, z1_e2t0, zp_delt )154 CALL wrk_alloc( jpi,jpj, zaU, zaV, zmU_t, zmV_t, zmf, zTauU_ia, ztauV_ia )155 CALL wrk_alloc( jpi,jpj, zspgU, zspgV, v_oceU, u_oceV, v_iceU, u_iceV, zfU, zfV )156 CALL wrk_alloc( jpi,jpj, zds, zs1, zs2, zs12, zu_ice, zv_ice, zresr, zpice )157 CALL wrk_alloc( jpi,jpj, zswitchU, zswitchV, zmaskU, zmaskV, zfmask, zwf )158 CALL wrk_alloc( jpi,jpj, zCorx, zCory)159 CALL wrk_alloc( jpi,jpj, ztaux_oi, ztauy_oi)160 152 161 153 #if defined key_agrif … … 762 754 ENDIF 763 755 ENDIF 764 ! 765 766 CALL wrk_dealloc( jpi,jpj, z1_e1t0, z1_e2t0, zp_delt ) 767 CALL wrk_dealloc( jpi,jpj, zaU, zaV, zmU_t, zmV_t, zmf, zTauU_ia, ztauV_ia ) 768 CALL wrk_dealloc( jpi,jpj, zspgU, zspgV, v_oceU, u_oceV, v_iceU, u_iceV, zfU, zfV ) 769 CALL wrk_dealloc( jpi,jpj, zds, zs1, zs2, zs12, zu_ice, zv_ice, zresr, zpice ) 770 CALL wrk_dealloc( jpi,jpj, zswitchU, zswitchV, zmaskU, zmaskV, zfmask, zwf ) 771 CALL wrk_dealloc( jpi,jpj, zCorx, zCory ) 772 CALL wrk_dealloc( jpi,jpj, ztaux_oi, ztauy_oi ) 773 756 ! 774 757 END SUBROUTINE lim_rhg 775 758
Note: See TracChangeset
for help on using the changeset viewer.