Changeset 3488 for LMDZ6/trunk/libf


Ignore:
Timestamp:
Apr 26, 2019, 1:41:36 PM (6 years ago)
Author:
Laurent Fairhead
Message:

Some modification needed for the outputs for the unstructured grid case
AC

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ6/trunk/libf/phylmd/iophy.F90

    r3474 r3488  
    10671067            ENDIF
    10681068          ELSE IF (grid_type==unstructured) THEN
    1069             CALL xios_send_field(var%name, buffer_omp)
     1069            IF (SIZE(field) == klon) then
     1070              CALL xios_send_field(var%name, buffer_omp)
     1071            ELSE
     1072               CALL xios_send_field(var%name, field)
     1073            ENDIF
     1074
    10701075          ENDIF
    10711076          IF (prt_level >= 10) THEN
     
    10941099                    ENDIF
    10951100                  ELSE IF (grid_type==unstructured) THEN
    1096                     CALL xios_send_field(var%name, buffer_omp)
     1101                    IF (SIZE(field) == klon) then
     1102                      CALL xios_send_field(var%name, buffer_omp)
     1103                    ELSE
     1104                      CALL xios_send_field(var%name, field)
     1105                    ENDIF
    10971106                  ENDIF
    10981107
     
    12481257            ENDIF
    12491258          ELSE IF (grid_type==unstructured) THEN
    1250             CALL xios_send_field(var%name, buffer_omp(:,1:nlevx))
     1259            IF (SIZE(field,1) == klon) then
     1260               CALL xios_send_field(var%name, buffer_omp(:,1:nlevx))
     1261            ELSE
     1262               CALL xios_send_field(var%name, field)
     1263            ENDIF
    12511264        ENDIF
    12521265
     
    12741287                  ENDIF
    12751288                ELSE IF (grid_type==unstructured) THEN
    1276                   CALL xios_send_field(var%name, buffer_omp(:,1:nlevx))
     1289                  IF (SIZE(field,1) == klon) then
     1290                     CALL xios_send_field(var%name, buffer_omp(:,1:nlevx))
     1291                  ELSE
     1292                     CALL xios_send_field(var%name, field)
     1293                  ENDIF
    12771294                ENDIF
    12781295
     
    13621379    !Et sinon on.... écrit
    13631380    IF (SIZE(field)/=klon .AND. SIZE(field)/=klev .AND. SIZE(field)/=klev+1) CALL abort_physic('iophy::histwrite2d_xios','Field first DIMENSION not equal to klon/klev',1)
    1364    
    13651381    IF (SIZE(field) == klev .OR. SIZE(field) == klev+1) then
    13661382!$OMP MASTER
     1383
    13671384        CALL xios_send_field(field_name,field)
    13681385!$OMP END MASTER   
Note: See TracChangeset for help on using the changeset viewer.