Changeset 694 for LMDZ4/trunk


Ignore:
Timestamp:
Apr 4, 2006, 5:42:55 PM (19 years ago)
Author:
lmdzadmin
Message:

Correction bogue : debordement de memoire si klev < nlevSTD(=17)
PLV/IM

Location:
LMDZ4/trunk/libf/phylmd
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • LMDZ4/trunk/libf/phylmd/physiq.F

    r687 r694  
    4242#define histmth
    4343#define histins
    44 c #define histISCCP
    45 c #define histmthNMC
     44#define histmthNMC
     45#define histISCCP
    4646c======================================================================
    4747c    modif   ( P. Le Van ,  12/10/98 )
     
    11521152      REAL zx_tmp_fi2d(klon)      ! variable temporaire grille physique
    11531153      REAL zx_tmp_fi3d(klon,klev) ! variable temporaire pour champs 3D
     1154#ifdef histmthNMC
     1155      REAL zx_tmp_NC(iim,jjmp1,nlevSTD)
     1156      REAL zx_tmp_fiNC(klon,nlevSTD)
     1157#endif
    11541158      REAL*8 zx_tmp2_fi3d(klon,klev) ! variable temporaire pour champs 3D
    11551159      REAL zx_tmp_2d(iim,jjmp1), zx_tmp_3d(iim,jjmp1,klev)
  • LMDZ4/trunk/libf/phylmd/write_histmthNMC.h

    r684 r694  
    1414ccc
    1515       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,tsumSTD(:,:,2),
    16      $      zx_tmp_3d)
    17        CALL histwrite(nid_nmc,"temp",itau_w,zx_tmp_3d,
     16     $      zx_tmp_NC)
     17       CALL histwrite(nid_nmc,"temp",itau_w,zx_tmp_NC,
    1818     $       iim*jjmp1*nlevSTD,ndex3d)
    1919c
    2020       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,phisumSTD(:,:,2),
    21      $     zx_tmp_3d)
    22        CALL histwrite(nid_nmc,"phi",itau_w,zx_tmp_3d,
     21     $     zx_tmp_NC)
     22       CALL histwrite(nid_nmc,"phi",itau_w,zx_tmp_NC,
    2323     $       iim*jjmp1*nlevSTD,ndex3d)
    2424c
    2525       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,qsumSTD(:,:,2),
    26      $     zx_tmp_3d)
    27        CALL histwrite(nid_nmc,"q",itau_w,zx_tmp_3d,
     26     $     zx_tmp_NC)
     27       CALL histwrite(nid_nmc,"q",itau_w,zx_tmp_NC,
    2828     $       iim*jjmp1*nlevSTD,ndex3d)
    2929c
    3030       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,rhsumSTD(:,:,2),
    31      $     zx_tmp_3d)
    32        CALL histwrite(nid_nmc,"rh",itau_w,zx_tmp_3d,
     31     $     zx_tmp_NC)
     32       CALL histwrite(nid_nmc,"rh",itau_w,zx_tmp_NC,
    3333     $       iim*jjmp1*nlevSTD,ndex3d)
    3434c
    3535       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,usumSTD(:,:,2),
    36      $     zx_tmp_3d)
    37        CALL histwrite(nid_nmc,"u",itau_w,zx_tmp_3d,
     36     $     zx_tmp_NC)
     37       CALL histwrite(nid_nmc,"u",itau_w,zx_tmp_NC,
    3838     $       iim*jjmp1*nlevSTD,ndex3d)
    3939c
    4040       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,vsumSTD(:,:,2),
    41      $     zx_tmp_3d)
    42        CALL histwrite(nid_nmc,"v",itau_w,zx_tmp_3d,
     41     $     zx_tmp_NC)
     42       CALL histwrite(nid_nmc,"v",itau_w,zx_tmp_NC,
    4343     $       iim*jjmp1*nlevSTD,ndex3d)
    4444ccc
     
    4646ccc
    4747       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,tsumSTD(:,:,3),
    48      $     zx_tmp_3d)
    49        CALL histwrite(nid_nmc,"temp",itau_w,zx_tmp_3d,
     48     $     zx_tmp_NC)
     49       CALL histwrite(nid_nmc,"temp",itau_w,zx_tmp_NC,
    5050     $       iim*jjmp1*nlevSTD,ndex3d)
    5151c
    5252       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,phisumSTD(:,:,3),
    53      $     zx_tmp_3d)
    54        CALL histwrite(nid_nmc,"phi",itau_w,zx_tmp_3d,
     53     $     zx_tmp_NC)
     54       CALL histwrite(nid_nmc,"phi",itau_w,zx_tmp_NC,
    5555     $       iim*jjmp1*nlevSTD,ndex3d)
    5656c
    5757       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,qsumSTD(:,:,3),
    58      $     zx_tmp_3d)
    59        CALL histwrite(nid_nmc,"q",itau_w,zx_tmp_3d,
     58     $     zx_tmp_NC)
     59       CALL histwrite(nid_nmc,"q",itau_w,zx_tmp_NC,
    6060     $       iim*jjmp1*nlevSTD,ndex3d)
    6161c
    6262       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,rhsumSTD(:,:,3),
    63      $     zx_tmp_3d)
    64        CALL histwrite(nid_nmc,"rh",itau_w,zx_tmp_3d,
     63     $     zx_tmp_NC)
     64       CALL histwrite(nid_nmc,"rh",itau_w,zx_tmp_NC,
    6565     $       iim*jjmp1*nlevSTD,ndex3d)
    6666c
    6767       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,usumSTD(:,:,3),
    68      $     zx_tmp_3d)
    69        CALL histwrite(nid_nmc,"u",itau_w,zx_tmp_3d,
     68     $     zx_tmp_NC)
     69       CALL histwrite(nid_nmc,"u",itau_w,zx_tmp_NC,
    7070     $       iim*jjmp1*nlevSTD,ndex3d)
    7171c
    7272       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,vsumSTD(:,:,3),
    73      $     zx_tmp_3d)
    74        CALL histwrite(nid_nmc,"v",itau_w,zx_tmp_3d,
     73     $     zx_tmp_NC)
     74       CALL histwrite(nid_nmc,"v",itau_w,zx_tmp_NC,
    7575     $       iim*jjmp1*nlevSTD,ndex3d)
    7676c
    7777       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,wsumSTD(:,:,3),
    78      $     zx_tmp_3d)
    79        CALL histwrite(nid_nmc,"w",itau_w,zx_tmp_3d,
     78     $     zx_tmp_NC)
     79       CALL histwrite(nid_nmc,"w",itau_w,zx_tmp_NC,
    8080     $       iim*jjmp1*nlevSTD,ndex3d)
    8181c
     
    8383        DO i=1, klon
    8484         IF(tnondef(i,k,3).NE.1.E+20) THEN
    85           zx_tmp_fi3d(i,k) = (100.*tnondef(i,k,3))/ecrit_hf2mth
     85          zx_tmp_fiNC(i,k) = (100.*tnondef(i,k,3))/ecrit_hf2mth
    8686         ELSE
    87           zx_tmp_fi3d(i,k) = 1.E+20
     87          zx_tmp_fiNC(i,k) = 1.E+20
    8888         ENDIF
    8989        ENDDO
    9090       ENDDO !k=1, nlevSTD
    9191c
    92        CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,zx_tmp_fi3d,zx_tmp_3d)
    93        CALL histwrite(nid_nmc,"psbg",itau_w,zx_tmp_3d,
     92       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,zx_tmp_fiNC,zx_tmp_NC)
     93       CALL histwrite(nid_nmc,"psbg",itau_w,zx_tmp_NC,
    9494     $       iim*jjmp1*nlevSTD,ndex3d)
    9595c
    9696       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,uvsumSTD(:,:,3),
    97      $     zx_tmp_3d)
    98        CALL histwrite(nid_nmc,"uv",itau_w,zx_tmp_3d,
     97     $     zx_tmp_NC)
     98       CALL histwrite(nid_nmc,"uv",itau_w,zx_tmp_NC,
    9999     $       iim*jjmp1*nlevSTD,ndex3d)
    100100c
    101101       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,vqsumSTD(:,:,3),
    102      $     zx_tmp_3d)
    103        CALL histwrite(nid_nmc,"vq",itau_w,zx_tmp_3d,
     102     $     zx_tmp_NC)
     103       CALL histwrite(nid_nmc,"vq",itau_w,zx_tmp_NC,
    104104     $       iim*jjmp1*nlevSTD,ndex3d)
    105105c
    106106       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,vTsumSTD(:,:,3),
    107      $     zx_tmp_3d)
    108        CALL histwrite(nid_nmc,"vT",itau_w,zx_tmp_3d,
     107     $     zx_tmp_NC)
     108       CALL histwrite(nid_nmc,"vT",itau_w,zx_tmp_NC,
    109109     $       iim*jjmp1*nlevSTD,ndex3d)
    110110c
    111111       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1, wqsumSTD(:,:,3),
    112      $     zx_tmp_3d)
    113        CALL histwrite(nid_nmc,"wq",itau_w,zx_tmp_3d,
     112     $     zx_tmp_NC)
     113       CALL histwrite(nid_nmc,"wq",itau_w,zx_tmp_NC,
    114114     $       iim*jjmp1*nlevSTD,ndex3d)
    115115c
    116116       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,vphisumSTD(:,:,3),
    117      $     zx_tmp_3d)
    118        CALL histwrite(nid_nmc,"vphi",itau_w,zx_tmp_3d,
     117     $     zx_tmp_NC)
     118       CALL histwrite(nid_nmc,"vphi",itau_w,zx_tmp_NC,
    119119     $       iim*jjmp1*nlevSTD,ndex3d)
    120120c
    121121       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,wTsumSTD(:,:,3),
    122      $     zx_tmp_3d)
    123        CALL histwrite(nid_nmc,"wT",itau_w,zx_tmp_3d,
     122     $     zx_tmp_NC)
     123       CALL histwrite(nid_nmc,"wT",itau_w,zx_tmp_NC,
    124124     $       iim*jjmp1*nlevSTD,ndex3d)
    125125c
    126126       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,u2sumSTD(:,:,3),
    127      $     zx_tmp_3d)
    128        CALL histwrite(nid_nmc,"uxu",itau_w,zx_tmp_3d,
     127     $     zx_tmp_NC)
     128       CALL histwrite(nid_nmc,"uxu",itau_w,zx_tmp_NC,
    129129     $       iim*jjmp1*nlevSTD,ndex3d)
    130130c
    131131       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,v2sumSTD(:,:,3),
    132      $     zx_tmp_3d)
    133        CALL histwrite(nid_nmc,"vxv",itau_w,zx_tmp_3d,
     132     $     zx_tmp_NC)
     133       CALL histwrite(nid_nmc,"vxv",itau_w,zx_tmp_NC,
    134134     $       iim*jjmp1*nlevSTD,ndex3d)
    135135c
    136136       CALL gr_fi_ecrit(nlevSTD, klon,iim,jjmp1,T2sumSTD(:,:,3),
    137      $     zx_tmp_3d)
    138        CALL histwrite(nid_nmc,"TxT",itau_w,zx_tmp_3d,
     137     $     zx_tmp_NC)
     138       CALL histwrite(nid_nmc,"TxT",itau_w,zx_tmp_NC,
    139139     $       iim*jjmp1*nlevSTD,ndex3d)
    140140c
Note: See TracChangeset for help on using the changeset viewer.