New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 5921 for branches/2015 – NEMO

Changeset 5921 for branches/2015


Ignore:
Timestamp:
2015-11-25T18:13:47+01:00 (8 years ago)
Author:
mathiot
Message:

ISF: modification of how we compute contribution to hpg of the first half wet cell beneath an ice shelf

Location:
branches/2015/dev_r5151_UKMO_ISF/NEMOGCM/NEMO/OPA_SRC
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/2015/dev_r5151_UKMO_ISF/NEMOGCM/NEMO/OPA_SRC/DYN/dynhpg.F90

    r5834 r5921  
    228228         ziceload = 0._wp 
    229229         DO jj = 1, jpj 
    230             DO ji = 1, jpi   ! vector opt. 
     230            DO ji = 1, jpi 
    231231               ikt=mikt(ji,jj) 
    232232               ziceload(ji,jj) = ziceload(ji,jj) + (znad + zrhd(ji,jj,1) ) * fse3w(ji,jj,1) * (1._wp - tmask(ji,jj,1)) 
     
    498498   SUBROUTINE hpg_isf( kt ) 
    499499      !!--------------------------------------------------------------------- 
    500       !!                  ***  ROUTINE hpg_sco  *** 
     500      !!                  ***  ROUTINE hpg_isf  *** 
    501501      !! 
    502502      !! ** Method  :   s-coordinate case. Jacobian scheme. 
     
    537537      zhpi(:,:,:)=0._wp ; zhpj(:,:,:)=0._wp 
    538538 
    539       ! compute rhd at the ice/oce interface (ocean side) usefull to reduce unrealistic water current if homogene water 
    540 !  TO BE DISCUSS do we compute density at w point for the ocean/ice atmosphere 
    541 !      DO ji=1,jpi 
    542 !        DO jj=1,jpj 
    543 !          ikt=mikt(ji,jj) 
    544 !          ztstop(ji,jj,1)=tsn(ji,jj,ikt,1) 
    545 !          ztstop(ji,jj,2)=tsn(ji,jj,ikt,2) 
    546 !        END DO 
    547 !      END DO 
    548 !      CALL eos(ztstop,risfdep,zrhdtop_oce) 
     539      ! compute rhd at the ice/oce interface (ocean side) 
     540      ! usefull to reduce residual current in the test case ISOMIP with no melting 
     541      DO ji=1,jpi 
     542        DO jj=1,jpj 
     543          ikt=mikt(ji,jj) 
     544          ztstop(ji,jj,1)=tsn(ji,jj,ikt,1) 
     545          ztstop(ji,jj,2)=tsn(ji,jj,ikt,2) 
     546        END DO 
     547      END DO 
     548      CALL eos(ztstop,risfdep,zrhdtop_oce) 
    549549 
    550550!==================================================================================      
     
    556556            ! hydrostatic pressure gradient along s-surfaces and ice shelf pressure 
    557557            ! we assume ISF is in isostatic equilibrium 
    558             zhpi(ji,jj,1) = zcoef0 / e1u(ji,jj) * ( fse3w(ji+1,jj  ,iktp1i) * ( znad + rhd(ji+1,jj  ,iktp1i) )   & 
    559                &                                  - fse3w(ji  ,jj  ,ikt   ) * ( znad + rhd(ji  ,jj  ,ikt   ) )   & 
    560                &                                  + ( riceload(ji+1,jj) - riceload(ji,jj))                       )  
    561             zhpj(ji,jj,1) = zcoef0 / e2v(ji,jj) * ( fse3w(ji  ,jj+1,iktp1j) * ( znad + rhd(ji  ,jj+1,iktp1j) )   & 
    562                &                                  - fse3w(ji  ,jj  ,ikt   ) * ( znad + rhd(ji  ,jj  ,ikt   ) )   & 
    563                &                                  + ( riceload(ji,jj+1) - riceload(ji,jj) )                      )  
    564 !            zhpi(ji,jj,1) = zcoef0 / e1u(ji,jj) * ( 0.5_wp * fse3w(ji+1,jj  ,iktp1i)                                    & 
    565 !               &                                  * ( 2._wp * znad + rhd(ji+1,jj  ,iktp1i) + zrhdtop_oce(ji+1,jj  ) )   & 
    566 !               &                                  - 0.5_wp * fse3w(ji  ,jj  ,ikt   )                                    & 
    567 !               &                                  * ( 2._wp * znad + rhd(ji  ,jj  ,ikt   ) + zrhdtop_oce(ji  ,jj  ) )   & 
    568 !               &                                  + ( riceload(ji+1,jj) - riceload(ji,jj))                              )  
    569 !            zhpj(ji,jj,1) = zcoef0 / e2v(ji,jj) * ( 0.5_wp * fse3w(ji  ,jj+1,iktp1j)                                    & 
    570 !               &                                  * ( 2._wp * znad + rhd(ji  ,jj+1,iktp1j) + zrhdtop_oce(ji  ,jj+1) )   & 
    571 !               &                                  - 0.5_wp * fse3w(ji  ,jj  ,ikt   )                                    &  
    572 !               &                                  * ( 2._wp * znad + rhd(ji  ,jj  ,ikt   ) + zrhdtop_oce(ji  ,jj  ) )   & 
    573 !               &                                  + ( riceload(ji,jj+1) - riceload(ji,jj) )                             )  
     558            zhpi(ji,jj,1) = zcoef0 / e1u(ji,jj) * ( 0.5_wp * fse3w(ji+1,jj,iktp1i)                                    & 
     559               &                                    * ( 2._wp * znad + rhd(ji+1,jj,iktp1i) + zrhdtop_oce(ji+1,jj) )   & 
     560               &                                  - 0.5_wp * fse3w(ji,jj,ikt)                                         & 
     561               &                                    * ( 2._wp * znad + rhd(ji,jj,ikt) + zrhdtop_oce(ji,jj) )          & 
     562               &                                  + ( riceload(ji+1,jj) - riceload(ji,jj))                            )  
     563            zhpj(ji,jj,1) = zcoef0 / e2v(ji,jj) * ( 0.5_wp * fse3w(ji,jj+1,iktp1j)                                    & 
     564               &                                    * ( 2._wp * znad + rhd(ji,jj+1,iktp1j) + zrhdtop_oce(ji,jj+1) )   & 
     565               &                                  - 0.5_wp * fse3w(ji,jj,ikt)                                         &  
     566               &                                    * ( 2._wp * znad + rhd(ji,jj,ikt) + zrhdtop_oce(ji,jj) )          & 
     567               &                                  + ( riceload(ji,jj+1) - riceload(ji,jj))                            )  
    574568            ! s-coordinate pressure gradient correction (=0 if z coordinate) 
    575569            zuap = -zcoef0 * ( rhd   (ji+1,jj,1) + rhd   (ji,jj,1) + 2._wp * znad )   & 
  • branches/2015/dev_r5151_UKMO_ISF/NEMOGCM/NEMO/OPA_SRC/TRA/zpshde.F90

    r5834 r5921  
    203203      !! ** Purpose :   Compute the horizontal derivative of T, S and rho 
    204204      !!      at u- and v-points with a linear interpolation for z-coordinate 
    205       !!      with partial steps. 
     205      !!      with partial steps for top (ice shelf) and bottom. 
    206206      !! 
    207207      !! ** Method  :   In z-coord with partial steps, scale factors on last  
     
    237237      !!      Gradient formulation for rho : 
    238238      !!          di(rho) = rd~ - rd(i,j,k)   or   rd(i+1,j,k) - rd~ 
    239       !!      For the top case: As for the bottom case but upside down 
     239      !! 
     240      !!      For the top case (ice shelf): As for the bottom case but upside down 
    240241      !! 
    241242      !! ** Action  : compute for top and bottom interfaces 
Note: See TracChangeset for help on using the changeset viewer.