From bf380c37834b8cc50a9dfad3011be0bdde351ab1 Mon Sep 17 00:00:00 2001 From: Sebastien Masson <sebastien.masson@locean.ipsl.fr> Date: Tue, 20 Dec 2022 18:27:45 +0100 Subject: [PATCH] fix mpp_start with AGRIF in main --- src/OCE/LBC/lib_mpp.F90 | 19 +++++-------------- 1 file changed, 5 insertions(+), 14 deletions(-) diff --git a/src/OCE/LBC/lib_mpp.F90 b/src/OCE/LBC/lib_mpp.F90 index eeec1305..35d87d40 100644 --- a/src/OCE/LBC/lib_mpp.F90 +++ b/src/OCE/LBC/lib_mpp.F90 @@ -253,22 +253,13 @@ CONTAINS IF( ierr /= MPI_SUCCESS ) CALL ctl_stop( 'STOP', ' lib_mpp: Error in routine mpi_init' ) ENDIF - IF( PRESENT(localComm) ) THEN - IF( Agrif_Root() ) THEN - mpi_comm_oce = localComm - ENDIF - ELSE -# if defined key_agrif - IF( Agrif_Root() ) THEN -# endif - CALL mpi_comm_dup( mpi_comm_world, mpi_comm_oce, ierr) - IF( ierr /= MPI_SUCCESS ) CALL ctl_stop( 'STOP', ' lib_mpp: Error in routine mpi_comm_dup' ) # if defined key_agrif - ELSE - mpi_comm_oce = Agrif_MPI_get_grid_comm() - ENDIF + IF( Agrif_Root() ) CALL Agrif_MPI_Init(localComm) + mpi_comm_oce = Agrif_MPI_get_grid_comm() ! works for parent and children +# else + mpi_comm_oce = mpi_comm_world ! default + IF( PRESENT(localComm) ) mpi_comm_oce = localComm # endif - ENDIF CALL mpi_comm_rank( mpi_comm_oce, mpprank, ierr ) CALL mpi_comm_size( mpi_comm_oce, mppsize, ierr ) -- GitLab