Changeset 7988 for branches/2017/dev_r7963_nemo_v3_6_AGRIF-3_AGRIFVVL/NEMOGCM/NEMO/NST_SRC/agrif_user.F90
- Timestamp:
- 2017-04-28T17:39:22+02:00 (8 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/2017/dev_r7963_nemo_v3_6_AGRIF-3_AGRIFVVL/NEMOGCM/NEMO/NST_SRC/agrif_user.F90
r7972 r7988 198 198 CALL Agrif_Bc_variable(tsn_sponge_id,calledweight=1.,procname=interptsn_sponge) 199 199 ! reset tsa to zero 200 tsa(:,:,:,:) = 0. 200 tsa(:,:,:,:) = 0. !? JC: ?? 201 201 202 202 Agrif_UseSpecialValue = ln_spc_dyn … … 212 212 Agrif_UseSpecialValue = .TRUE. 213 213 CALL Agrif_Bc_variable(sshn_id,calledweight=1., procname=interpsshn ) 214 hbdy_w(:) = 0.e0 ; hbdy_e(:) = 0.e0 ; hbdy_n(:) = 0.e0 ; hbdy_s(:) = 0.e0 215 ssha(:,:) = 0.e0 214 216 215 217 #if defined key_dynspg_ts … … 219 221 CALL Agrif_Bc_variable(ub2b_interp_id,calledweight=1.,procname=interpub2b) 220 222 CALL Agrif_Bc_variable(vb2b_interp_id,calledweight=1.,procname=interpvb2b) 221 ubdy_w(:) = 0.e0 ; vbdy_w(:) = 0.e0 ; hbdy_w(:) =0.e0222 ubdy_e(:) = 0.e0 ; vbdy_e(:) = 0.e0 ; hbdy_e(:) =0.e0223 ubdy_n(:) = 0.e0 ; vbdy_n(:) = 0.e0 ; hbdy_n(:) =0.e0224 ubdy_s(:) = 0.e0 ; vbdy_s(:) = 0.e0 ; hbdy_s(:) =0.e0223 ubdy_w(:) = 0.e0 ; vbdy_w(:) = 0.e0 224 ubdy_e(:) = 0.e0 ; vbdy_e(:) = 0.e0 225 ubdy_n(:) = 0.e0 ; vbdy_n(:) = 0.e0 226 ubdy_s(:) = 0.e0 ; vbdy_s(:) = 0.e0 225 227 #endif 226 228 … … 307 309 ! 308 310 ! JC: I am not sure if Agrif_MaxLevel() is the "relative" 309 ! or the absolute maximum nesting level...TBC 310 IF ( Agrif_Level().EQ.Agrif_MaxLevel() ) THEN 311 ! or the absolute maximum nesting level...TBC 312 nbcline = 0 313 IF ( Agrif_Level().EQ.Agrif_MaxLevel() ) THEN 311 314 ! NB: Order matters below: 312 CALL Agrif_Update_vvl()315 IF ( lk_vvl ) CALL Agrif_Update_vvl() 313 316 CALL Agrif_Update_tra() 314 317 CALL Agrif_Update_dyn() … … 320 323 ! 321 324 Agrif_UseSpecialValueInUpdate = .FALSE. 322 nbcline = 0323 325 lk_agrif_doupd = .FALSE. 324 326 ! … … 366 368 CALL agrif_declare_variable((/2,2/),(/3,3/),(/'x','y'/),(/1,1/),(/nlci,nlcj/),sshn_id) 367 369 368 # if defined key_zdftke 369 CALL agrif_declare_variable((/2,2,0/),(/3,3,0/),(/'x','y','N'/),(/1,1,1/),(/ jpi,jpj,jpk/), en_id)370 CALL agrif_declare_variable((/2,2,0/),(/3,3,0/),(/'x','y','N'/),(/1,1,1/),(/ jpi,jpj,jpk/),avt_id)371 CALL agrif_declare_variable((/2,2,0/),(/3,3,0/),(/'x','y','N'/),(/1,1,1/),(/ jpi,jpj,jpk/),avm_id)370 # if defined key_zdftke || defined key_zdfgls 371 CALL agrif_declare_variable((/2,2,0/),(/3,3,0/),(/'x','y','N'/),(/1,1,1/),(/nlci,nlcj,jpk/), en_id) 372 CALL agrif_declare_variable((/2,2,0/),(/3,3,0/),(/'x','y','N'/),(/1,1,1/),(/nlci,nlcj,jpk/),avt_id) 373 CALL agrif_declare_variable((/2,2,0/),(/3,3,0/),(/'x','y','N'/),(/1,1,1/),(/nlci,nlcj,jpk/),avm_id) 372 374 # endif 373 375 … … 395 397 CALL Agrif_Set_bcinterp(vmsk_id,interp=AGRIF_constant) 396 398 397 # if defined key_zdftke 399 # if defined key_zdftke || defined key_zdfgls 398 400 CALL Agrif_Set_bcinterp(avm_id ,interp=AGRIF_linear) 399 401 # endif … … 423 425 CALL Agrif_Set_bc(vmsk_id,(/0,0/)) 424 426 425 # if defined key_zdftke 427 # if defined key_zdftke || defined key_zdfgls 426 428 CALL Agrif_Set_bc(avm_id ,(/0,1/)) 427 429 # endif … … 441 443 CALL Agrif_Set_Updatetype(vb2b_update_id,update1 = Agrif_Update_Average, update2 = Agrif_Update_Copy) 442 444 443 # if defined key_zdftke 445 # if defined key_zdftke || defined key_zdfgls 444 446 CALL Agrif_Set_Updatetype( en_id, update = AGRIF_Update_Average) 445 447 CALL Agrif_Set_Updatetype(avt_id, update = AGRIF_Update_Average) … … 457 459 ! CALL Agrif_Set_Updatetype(vb2b_update_id,update1 = Agrif_Update_Full_Weighting, update2 = Agrif_Update_Average) 458 460 ! CALL Agrif_Set_Updatetype(sshn_id, update = Agrif_Update_Full_Weighting) 459 461 462 ! CALL Agrif_Set_Updatetype(e3t_id, update = Agrif_Update_Full_Weighting) 460 463 ! 461 464 END SUBROUTINE agrif_declare_var … … 657 660 ENDIF 658 661 ENDIF 659 662 nbcline_trc = 0 660 663 CALL Agrif_Update_trc(0) 661 664 ! 662 665 Agrif_UseSpecialValueInUpdate = .FALSE. 663 nbcline_trc = 0664 666 ! 665 667 END SUBROUTINE Agrif_InitValues_cont_top … … 766 768 IF (lk_mpp) iminspon = MIN(iminspon,FLOOR(REAL(jpi-2)/REAL(Agrif_irhox())), FLOOR(REAL(jpj-2)/REAL(Agrif_irhox())) ) 767 769 IF (nn_sponge_len > iminspon) CALL ctl_stop('agrif sponge length is too large') 770 IF (MOD((nitend-nit000+1), nbclineupdate).NE.0 ) CALL ctl_stop('number of time steps should be a multiple of nn_cln_update') 768 771 ! 769 772 IF( agrif_oce_alloc() > 0 ) CALL ctl_warn('agrif agrif_oce_alloc: allocation of arrays failed')
Note: See TracChangeset
for help on using the changeset viewer.