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 13351 for NEMO/branches/2020/dev_r13312_AGRIF-03-04_jchanut_vinterp_tstep/src/NST/agrif_user.F90 – NEMO

Ignore:
Timestamp:
2020-07-28T17:20:03+02:00 (4 years ago)
Author:
jchanut
Message:

#2222, fixes mistakes when removing key_vertical - rename flag in namelist to prevent further mistakes - vertical refinement works fine in VORTEX

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2020/dev_r13312_AGRIF-03-04_jchanut_vinterp_tstep/src/NST/agrif_user.F90

    r13337 r13351  
    230230         ! 
    231231         kindic_agr = 0 
    232          IF( .NOT. ln_vremap ) THEN 
     232         IF( .NOT. ln_vert_remap ) THEN 
    233233            ! 
    234234            ! check if tmask and vertical scale factors agree with parent in sponge area: 
     
    251251      ENDIF 
    252252 
    253       IF( ln_vremap ) THEN 
     253      IF( ln_vert_remap ) THEN 
    254254      ! Additional constrain that should be removed someday: 
    255255         IF ( Agrif_Parent(jpk).GT.jpk ) THEN 
    256             CALL ctl_stop( ' With ln_vremap, child grids must have jpk greater or equal to the parent value' ) 
     256            CALL ctl_stop( ' With ln_vert_remap, child grids must have jpk greater or equal to the parent value' ) 
    257257         ENDIF 
    258258      ENDIF 
     
    294294      Agrif_SpecialValue    = 0._wp 
    295295      Agrif_UseSpecialValue = .TRUE. 
    296       l_vremap              = ln_vremap 
    297  
    298       CALL Agrif_Bc_variable(       tsn_id,calledweight=1.,procname=interptsn) 
     296      l_vremap              = ln_vert_remap 
     297 
     298      CALL Agrif_Bc_variable(ts_interp_id,calledweight=1.,procname=interptsn) 
    299299      CALL Agrif_Sponge 
    300300      tabspongedone_tsn = .FALSE. 
    301       CALL Agrif_Bc_variable(tsn_sponge_id,calledweight=1.,procname=interptsn_sponge) 
     301      CALL Agrif_Bc_variable(ts_sponge_id,calledweight=1.,procname=interptsn_sponge) 
    302302      ! reset tsa to zero 
    303303      ts(:,:,:,:,Krhs_a) = 0._wp 
     
    394394      ind3 = nn_hls + 2 + nbghostcells_y_s 
    395395 
    396       CALL agrif_declare_variable((/2,2,0,0/),(/ind2,ind3,0,0/)  ,(/'x','y','N','N'/),(/1,1,1,1/),(/jpi,jpj,jpk,jpts+1/),tsn_id) 
    397       CALL agrif_declare_variable((/2,2,0,0/),(/ind2,ind3,0,0/)  ,(/'x','y','N','N'/),(/1,1,1,1/),(/jpi,jpj,jpk,jpts+1/),tsn_sponge_id) 
     396      CALL agrif_declare_variable((/2,2,0,0/),(/ind2,ind3,0,0/)  ,(/'x','y','N','N'/),(/1,1,1,1/),(/jpi,jpj,jpk,jpts+1/),ts_interp_id) 
     397      CALL agrif_declare_variable((/2,2,0,0/),(/ind2,ind3,0,0/)  ,(/'x','y','N','N'/),(/1,1,1,1/),(/jpi,jpj,jpk,jpts+1/),ts_update_id) 
     398      CALL agrif_declare_variable((/2,2,0,0/),(/ind2,ind3,0,0/)  ,(/'x','y','N','N'/),(/1,1,1,1/),(/jpi,jpj,jpk,jpts+1/),ts_sponge_id) 
    398399      CALL agrif_declare_variable((/1,2,0,0/),(/ind2-1,ind3,0,0/),(/'x','y','N','N'/),(/1,1,1,1/),(/jpi,jpj,jpk,2/),un_interp_id) 
    399400      CALL agrif_declare_variable((/2,1,0,0/),(/ind2,ind3-1,0,0/),(/'x','y','N','N'/),(/1,1,1,1/),(/jpi,jpj,jpk,2/),vn_interp_id) 
     
    423424      ! 2. Type of interpolation 
    424425      !------------------------- 
    425       CALL Agrif_Set_bcinterp(       tsn_id,interp =AGRIF_linear) 
     426      CALL Agrif_Set_bcinterp( ts_interp_id,interp =AGRIF_linear) 
    426427      CALL Agrif_Set_bcinterp( un_interp_id,interp1=Agrif_linear,interp2=AGRIF_ppm   ) 
    427428      CALL Agrif_Set_bcinterp( vn_interp_id,interp1=AGRIF_ppm   ,interp2=Agrif_linear) 
    428429 
    429       CALL Agrif_Set_bcinterp( tsn_sponge_id,interp =AGRIF_linear) 
     430      CALL Agrif_Set_bcinterp(  ts_sponge_id,interp =AGRIF_linear) 
    430431      CALL Agrif_Set_bcinterp(  un_sponge_id,interp1=Agrif_linear,interp2=AGRIF_ppm   ) 
    431432      CALL Agrif_Set_bcinterp(  vn_sponge_id,interp1=AGRIF_ppm   ,interp2=Agrif_linear) 
     
    453454      ! 3. Location of interpolation 
    454455      !----------------------------- 
    455       CALL Agrif_Set_bc(       tsn_id, (/0,ind1-1/) ) ! if west,  rhox=3 and nbghost=3: columns 2 to 4 
     456      CALL Agrif_Set_bc( ts_interp_id, (/0,ind1-1/) ) ! if west,  rhox=3 and nbghost=3: columns 2 to 4 
    456457      CALL Agrif_Set_bc( un_interp_id, (/0,ind1-1/) )  
    457458      CALL Agrif_Set_bc( vn_interp_id, (/0,ind1-1/) ) 
    458459 
    459       CALL Agrif_Set_bc( tsn_sponge_id, (/-nn_sponge_len*Agrif_irhox()-1,0/) )  ! if west,  rhox=3, nn_sponge_len=2  
     460      CALL Agrif_Set_bc(  ts_sponge_id, (/-nn_sponge_len*Agrif_irhox()-1,0/) )  ! if west,  rhox=3, nn_sponge_len=2  
    460461      CALL Agrif_Set_bc(  un_sponge_id, (/-nn_sponge_len*Agrif_irhox()-1,0/) )  ! and nbghost=3:  
    461462      CALL Agrif_Set_bc(  vn_sponge_id, (/-nn_sponge_len*Agrif_irhox()-1,0/) )  ! columns 4 to 11 
     
    475476 
    476477# if defined UPD_HIGH 
    477       CALL Agrif_Set_Updatetype(      tsn_id,update  = Agrif_Update_Full_Weighting) 
     478      CALL Agrif_Set_Updatetype(ts_interp_id,update  = Agrif_Update_Full_Weighting) 
    478479      CALL Agrif_Set_Updatetype(un_update_id,update1 = Agrif_Update_Average       , update2 = Agrif_Update_Full_Weighting) 
    479480      CALL Agrif_Set_Updatetype(vn_update_id,update1 = Agrif_Update_Full_Weighting, update2 = Agrif_Update_Average       ) 
     
    491492 
    492493#else 
    493       CALL Agrif_Set_Updatetype(     tsn_id, update  = AGRIF_Update_Average) 
    494       CALL Agrif_Set_Updatetype(un_update_id,update1 = Agrif_Update_Copy   , update2 = Agrif_Update_Average) 
    495       CALL Agrif_Set_Updatetype(vn_update_id,update1 = Agrif_Update_Average, update2 = Agrif_Update_Copy   ) 
     494      CALL Agrif_Set_Updatetype(ts_update_id ,update  = AGRIF_Update_Average) 
     495      CALL Agrif_Set_Updatetype(un_update_id ,update1 = Agrif_Update_Copy   , update2 = Agrif_Update_Average) 
     496      CALL Agrif_Set_Updatetype(vn_update_id ,update1 = Agrif_Update_Average, update2 = Agrif_Update_Copy   ) 
    496497 
    497498      CALL Agrif_Set_Updatetype(ub2b_update_id,update1 = Agrif_Update_Copy   , update2 = Agrif_Update_Average) 
     
    766767      INTEGER  ::   ios                 ! Local integer output status for namelist read 
    767768      NAMELIST/namagrif/ ln_agrif_2way, ln_init_chfrpar, rn_sponge_tra, rn_sponge_dyn, rn_trelax_tra, rn_trelax_dyn, & 
    768                        & ln_spc_dyn, ln_vremap, ln_chk_bathy 
     769                       & ln_spc_dyn, ln_vert_remap, ln_chk_bathy 
    769770      !!-------------------------------------------------------------------------------------- 
    770771      ! 
     
    787788         WRITE(numout,*) '      ad. time relaxation for dynamics  rn_trelax_dyn = ', rn_trelax_dyn 
    788789         WRITE(numout,*) '      use special values for dynamics   ln_spc_dyn    = ', ln_spc_dyn 
    789          WRITE(numout,*) '      vertical remapping                ln_vremap     = ', ln_vremap 
     790         WRITE(numout,*) '      vertical remapping                ln_vert_remap = ', ln_vert_remap 
    790791         WRITE(numout,*) '      check bathymetry                  ln_chk_bathy  = ', ln_chk_bathy 
    791792      ENDIF 
Note: See TracChangeset for help on using the changeset viewer.