From c929675bf0153b9f1bde3e88379e84f082c690ca Mon Sep 17 00:00:00 2001 From: Philippe WAUTELET <philippe.wautelet@aero.obs-mip.fr> Date: Thu, 5 Apr 2018 14:15:38 +0200 Subject: [PATCH] Philippe 05/04/2018: IO: store XHAT and YHAT when written by SURFEX (needed by PREP_PGD program) --- src/MNH/write_surf_mnh.f90 | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/MNH/write_surf_mnh.f90 b/src/MNH/write_surf_mnh.f90 index 4bc52b5a3..75a40faa5 100644 --- a/src/MNH/write_surf_mnh.f90 +++ b/src/MNH/write_surf_mnh.f90 @@ -257,6 +257,7 @@ USE MODE_TOOLS_ll USE MODE_WRITE_SURF_MNH_TOOLS ! USE MODD_CONF_n, ONLY: CSTORAGE_TYPE +USE MODD_GRID_n, ONLY: XXHAT, XYHAT USE MODD_IO_ll, ONLY: TFILE_SURFEX USE MODD_IO_SURF_MNH, ONLY :NMASK, CMASK, & NIU, NJU, NIB, NJB, NIE, NJE, & @@ -408,6 +409,11 @@ IF ( (CSTORAGE_TYPE=='PG' .OR. CSTORAGE_TYPE=='SU') & IF (HDIR=='H') THEN CALL FIND_FIELD_ID_FROM_MNHNAME('XHAT',IID,IRESP) CALL IO_WRITE_FIELD(TFILE_SURFEX,TFIELDLIST(IID),ZW1D(1+NHALO:IIU-NHALO),KRESP) + IF (.NOT. (ASSOCIATED(XXHAT))) THEN + !Store XXHAT if not yet done (necessary for PREP_PGD program when writing netCDF files) + ALLOCATE(XXHAT(IIU-2*NHALO)) + XXHAT(:) = ZW1D(1+NHALO:IIU-NHALO) + END IF END IF DEALLOCATE(ZW1D) ELSE IF ( (CSTORAGE_TYPE=='PG' .OR. CSTORAGE_TYPE=='SU') & @@ -434,6 +440,11 @@ ELSE IF ( (CSTORAGE_TYPE=='PG' .OR. CSTORAGE_TYPE=='SU') & IF (HDIR=='H') THEN CALL FIND_FIELD_ID_FROM_MNHNAME('YHAT',IID,IRESP) CALL IO_WRITE_FIELD(TFILE_SURFEX,TFIELDLIST(IID),ZW1D(1+NHALO:IJU-NHALO),KRESP) + IF (.NOT. (ASSOCIATED(XYHAT))) THEN + !Store XYHAT if not yet done (necessary for PREP_PGD program when writing netCDF files) + ALLOCATE(XYHAT(IJU-2*NHALO)) + XYHAT(:) = ZW1D(1+NHALO:IJU-NHALO) + END IF END IF DEALLOCATE(ZW1D) ELSE IF (HDIR=='H') THEN -- GitLab