Changeset 12068 for NEMO/branches/2019/UKMO_MERGE_2019/tests/VORTEX
- Timestamp:
- 2019-12-05T13:18:21+01:00 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/branches/2019/UKMO_MERGE_2019/tests/VORTEX/MY_SRC/domvvl.F90
r11822 r12068 37 37 38 38 PUBLIC dom_vvl_init ! called by domain.F90 39 PUBLIC dom_vvl_zgr ! called by isfcpl.F90 39 40 PUBLIC dom_vvl_sf_nxt ! called by step.F90 40 41 PUBLIC dom_vvl_sf_update ! called by step.F90 … … 118 119 INTEGER, INTENT(in) :: Kbb, Kmm, Kaa 119 120 ! 121 IF(lwp) WRITE(numout,*) 122 IF(lwp) WRITE(numout,*) 'dom_vvl_init : Variable volume activated' 123 IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~' 124 ! 125 CALL dom_vvl_ctl ! choose vertical coordinate (z_star, z_tilde or layer) 126 ! 127 ! ! Allocate module arrays 128 IF( dom_vvl_alloc() /= 0 ) CALL ctl_stop( 'STOP', 'dom_vvl_init : unable to allocate arrays' ) 129 ! 130 ! ! Read or initialize e3t_(b/n), tilde_e3t_(b/n) and hdiv_lf 131 CALL dom_vvl_rst( nit000, Kbb, Kmm, 'READ' ) 132 e3t(:,:,jpk,Kaa) = e3t_0(:,:,jpk) ! last level always inside the sea floor set one for all 133 ! 134 CALL dom_vvl_zgr(Kbb, Kmm, Kaa) ! interpolation scale factor, depth and water column 135 ! 136 END SUBROUTINE dom_vvl_init 137 ! 138 SUBROUTINE dom_vvl_zgr(Kbb, Kmm, Kaa) 139 !!---------------------------------------------------------------------- 140 !! *** ROUTINE dom_vvl_init *** 141 !! 142 !! ** Purpose : Interpolation of all scale factors, 143 !! depths and water column heights 144 !! 145 !! ** Method : - interpolate scale factors 146 !! 147 !! ** Action : - e3t_(n/b) and tilde_e3t_(n/b) 148 !! - Regrid: e3(u/v)_n 149 !! e3(u/v)_b 150 !! e3w_n 151 !! e3(u/v)w_b 152 !! e3(u/v)w_n 153 !! gdept_n, gdepw_n and gde3w_n 154 !! - h(t/u/v)_0 155 !! - frq_rst_e3t and frq_rst_hdv 156 !! 157 !! Reference : Leclair, M., and G. Madec, 2011, Ocean Modelling. 158 !!---------------------------------------------------------------------- 159 INTEGER, INTENT(in) :: Kbb, Kmm, Kaa 160 !!---------------------------------------------------------------------- 120 161 INTEGER :: ji, jj, jk 121 162 INTEGER :: ii0, ii1, ij0, ij1 122 163 REAL(wp):: zcoef 123 164 !!---------------------------------------------------------------------- 124 !125 IF(lwp) WRITE(numout,*)126 IF(lwp) WRITE(numout,*) 'dom_vvl_init : Variable volume activated'127 IF(lwp) WRITE(numout,*) '~~~~~~~~~~~~'128 !129 CALL dom_vvl_ctl ! choose vertical coordinate (z_star, z_tilde or layer)130 !131 ! ! Allocate module arrays132 IF( dom_vvl_alloc() /= 0 ) CALL ctl_stop( 'STOP', 'dom_vvl_init : unable to allocate arrays' )133 !134 ! ! Read or initialize e3t_(b/n), tilde_e3t_(b/n) and hdiv_lf135 CALL dom_vvl_rst( nit000, Kbb, Kmm, 'READ' )136 e3t(:,:,jpk,Kaa) = e3t_0(:,:,jpk) ! last level always inside the sea floor set one for all137 165 ! 138 166 ! !== Set of all other vertical scale factors ==! (now and before) … … 266 294 ENDIF 267 295 ! 268 END SUBROUTINE dom_vvl_ init296 END SUBROUTINE dom_vvl_zgr 269 297 270 298 … … 1030 1058 ! 1031 1059 IF( ioptio /= 1 ) CALL ctl_stop( 'Choose ONE vertical coordinate in namelist nam_vvl' ) 1032 IF( .NOT. ln_vvl_zstar .AND. ln_isf ) CALL ctl_stop( 'Only vvl_zstar has been tested with ice shelf cavity' )1033 1060 ! 1034 1061 IF(lwp) THEN ! Print the choice
Note: See TracChangeset
for help on using the changeset viewer.