New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 3294 for trunk/NEMOGCM/NEMO/OPA_SRC/DIA/diawri_dimg.h90 – NEMO

Ignore:
Timestamp:
2012-01-28T17:44:18+01:00 (12 years ago)
Author:
rblod
Message:

Merge of 3.4beta into the trunk

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/NEMOGCM/NEMO/OPA_SRC/DIA/diawri_dimg.h90

    r2715 r3294  
    8282    INTEGER :: inbsel, jk 
    8383    INTEGER :: iyear,imon,iday 
     84    INTEGER :: ialloc 
    8485    REAL(wp) :: zdtj 
    8586    CHARACTER(LEN=80) :: clname 
     
    8889    CHARACTER(LEN= 4) :: clver 
    8990    !!---------------------------------------------------------------------- 
     91    IF( nn_timing == 1 )   CALL timing_start('dia_wri') 
    9092    ! 
    9193    !  Initialization 
    9294    !  --------------- 
    9395    ! 
    94     IF(.not.ALLOCATED(um))THEN 
     96    IF( .NOT. ALLOCATED(um) )THEN 
    9597       ALLOCATE(um(jpi,jpj,jpk), vm(jpi,jpj,jpk), & 
    9698                wm(jpi,jpj,jpk),                  & 
     
    98100                tm(jpi,jpj,jpk), sm(jpi,jpj,jpk), & 
    99101                fsel(jpi,jpj,jpk),                & 
    100                 Stat=jk) 
    101        IF(jk /= 0)THEN 
    102           WRITE(*,*) 'ERROR: allocate failed in dia_wri (diawri_dimg.h90)' 
    103           CALL mppabort() 
    104        END IF 
    105     END IF 
     102                STAT=ialloc ) 
     103       ! 
     104       IF( lk_mpp      )   CALL mpp_sum ( ialloc  ) 
     105       IF( ialloc /= 0 )   CALL ctl_warn('dia_wri( diawri_dimg.h90) : failed to allocate arrays') 
     106    ENDIF 
     107 
    106108 
    107109    inbsel = 17 
     
    152154       wm(:,:,:)=wm(:,:,:) + wn (:,:,:) 
    153155       avtm(:,:,:)=avtm(:,:,:) + avt (:,:,:) 
    154        tm(:,:,:)=tm(:,:,:) + tn (:,:,:) 
    155        sm(:,:,:)=sm(:,:,:) + sn (:,:,:) 
     156       tm(:,:,:)=tm(:,:,:) + tsn(:,:,:,jp_tem) 
     157       sm(:,:,:)=sm(:,:,:) + tsn(:,:,:,jp_sal) 
    156158       ! 
    157159       fsel(:,:,1 ) = fsel(:,:,1 ) + utau(:,:) * umask(:,:,1) 
     
    159161       fsel(:,:,3 ) = fsel(:,:,3 ) + qsr (:,:) + qns  (:,:)  
    160162       fsel(:,:,4 ) = fsel(:,:,4 ) + ( emp(:,:)-rnf(:,:) )  
    161        !        fsel(:,:,5 ) = fsel(:,:,5 ) + tb  (:,:,1)  !RB not used 
     163       !        fsel(:,:,5 ) = fsel(:,:,5 ) + tsb(:,:,1,jp_tem)  !RB not used 
    162164       fsel(:,:,6 ) = fsel(:,:,6 ) + sshn(:,:)  
    163165       fsel(:,:,7 ) = fsel(:,:,7 ) + qsr(:,:) 
     
    226228          fsel(:,:,3 ) = (qsr (:,:) + qns (:,:)) * tmask(:,:,1) 
    227229          fsel(:,:,4 ) = ( emp(:,:)-rnf(:,:) ) * tmask(:,:,1)  
    228           !         fsel(:,:,5 ) = (tb  (:,:,1) - sf_sst(1)%fnow(:,:) ) *tmask(:,:,1) !RB not used 
     230          !         fsel(:,:,5 ) = (tsb(:,:,1,jp_tem) - sf_sst(1)%fnow(:,:) ) *tmask(:,:,1) !RB not used 
    229231 
    230232          fsel(:,:,6 ) = sshn(:,:) 
     
    302304 
    303305       IF( ll_dia_inst) THEN 
    304           CALL dia_wri_dimg(clname, cltext, tn, jpk, 'T') 
    305        ELSE 
    306           CALL dia_wri_dimg(clname, cltext, tm, jpk, 'T') 
     306          CALL dia_wri_dimg(clname, cltext, tsn(:,:,:,jp_tem), jpk, 'T') 
     307       ELSE 
     308          CALL dia_wri_dimg(clname, cltext, tm               , jpk, 'T') 
    307309       ENDIF 
    308310       ! 
     
    314316 
    315317       IF( ll_dia_inst) THEN 
    316           CALL dia_wri_dimg(clname, cltext, sn, jpk, 'T') 
    317        ELSE 
    318           CALL dia_wri_dimg(clname, cltext, sm, jpk, 'T') 
     318          CALL dia_wri_dimg(clname, cltext, tsn(:,:,:,jp_sal), jpk, 'T') 
     319       ELSE 
     320          CALL dia_wri_dimg(clname, cltext, sm               , jpk, 'T') 
    319321       ENDIF 
    320322       ! 
     
    357359    ENDIF 
    358360    ! 
     361    IF( nn_timing == 1 )   CALL timing_stop('dia_wri') 
     362    ! 
    3593639000 FORMAT(a,"_",a,"_y",i4.4,"m",i2.2,"d",i2.2,".dimgproc") 
    360364    ! 
Note: See TracChangeset for help on using the changeset viewer.