From e4c95a04eaed03b6cef6661ca3b9fd8b50d958ec Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Chanut?= <jerome.chanut@mercator-ocean.fr> Date: Fri, 29 Jul 2022 15:07:25 +0000 Subject: [PATCH] Resolve "Issues with ssh initialization in iceinit with vvl and AGRIF" --- src/OCE/IOM/restart.F90 | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/src/OCE/IOM/restart.F90 b/src/OCE/IOM/restart.F90 index 32e231279..acd3a54b7 100644 --- a/src/OCE/IOM/restart.F90 +++ b/src/OCE/IOM/restart.F90 @@ -30,6 +30,10 @@ MODULE restart USE usrdef_istate, ONLY : usr_def_istate_ssh ! user defined ssh initial state USE trdmxl_oce ! ocean active mixed layer tracers trends variables USE diu_bulk ! ??? +#if defined key_si3 + USE iceistate, ONLY: rsshadj, nn_iceini_file + USE sbc_oce, ONLY: ln_ice_embd +#endif #if defined key_agrif USE agrif_oce_interp #endif @@ -435,7 +439,21 @@ CONTAINS ENDIF #if defined key_agrif ! Set ghosts points from parent - IF (.NOT.Agrif_Root()) CALL Agrif_istate_ssh( Kbb, Kmm, Kaa, .true. ) + IF (.NOT.Agrif_Root()) THEN + CALL Agrif_istate_ssh( Kbb, Kmm, Kaa, .true. ) +#if defined key_si3 + IF ( (nn_ice/=2).AND.((Agrif_Parent(nn_ice)==2).AND. & + & (.NOT.(Agrif_Parent(ln_rstart) & + & .OR.(Agrif_Parent(nn_iceini_file)==2))).AND. & + & (.NOT.Agrif_Parent(ln_ice_embd)) & + & )) THEN + WHERE( ssmask(:,:) == 1._wp ) + ssh(:,:,Kmm) = ssh(:,:,Kmm) - Agrif_Parent(rsshadj) + ssh(:,:,Kbb) = ssh(:,:,Kbb) - Agrif_Parent(rsshadj) + ENDWHERE + ENDIF + ENDIF +#endif #endif ! ssh(:,:,Kmm) = ssh(:,:,Kbb) !* set now values from to before ones -- GitLab