diff --git a/src/OCE/IOM/iom_nf90.F90 b/src/OCE/IOM/iom_nf90.F90 index 67997b9a407e6a19a201079d3187b706460de8a5..6a95cdd3985ef946b31672930baf10a37d2a8ae0 100644 --- a/src/OCE/IOM/iom_nf90.F90 +++ b/src/OCE/IOM/iom_nf90.F90 @@ -697,10 +697,12 @@ CONTAINS IF( PRESENT(pv_r2d) ) ishape(1:2) = SHAPE(pv_r2d) IF( PRESENT(pv_r3d) ) ishape(1:3) = SHAPE(pv_r3d) - IF( ishape(1) == Ni_0 .AND. ishape(2) == Nj_0 ) THEN - ix1 = 1 ; ix2 = Ni_0 ; iy1 = 1 ; iy2 = Nj_0 - ELSEIF( ishape(1) == jpi .AND. ishape(2) == jpj ) THEN - ix1 = Nis0 ; ix2 = Nie0 ; iy1 = Njs0 ; iy2 = Nje0 + IF( ishape(1) == Ni_0 .AND. ishape(2) == Nj_0 ) THEN ! array with 0 halo + ix1 = 1 ; ix2 = Ni_0 ; iy1 = 1 ; iy2 = Nj_0 + ELSEIF( ishape(1) == jpi .AND. ishape(2) == jpj ) THEN ! array with nn_hls halos + ix1 = Nis0 ; ix2 = Nie0 ; iy1 = Njs0 ; iy2 = Nje0 + ELSEIF( ishape(1) == Ni_0+1 .AND. ishape(2) == Nj_0+1 ) THEN ! nn_hls = 2 and array with 1 halo + ix1 = 2 ; ix2 = Ni_0+1 ; iy1 = 2 ; iy2 = Nj_0+1 ELSE CALL ctl_stop( 'iom_nf90_rp0123d: should have been an impossible case...' ) ENDIF