Ignore:
Timestamp:
Jan 24, 2000, 1:07:41 PM (25 years ago)
Author:
lmdz
Message:

Le tableau ndex, qui permet de "flagger" les valeurs a sortir dans IOIPSL, est
dimmensionne maniere correcte, sinon sur Nec les champs 3D physique ne sont
pas correctement rempli. (probleme non visible avec les champs dynamiques mais
pour faire propre ...) LF

Location:
LMDZ.3.3/trunk/libf/bibio
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • LMDZ.3.3/trunk/libf/bibio/writedynav.F

    r2 r29  
    5858C   Variables locales
    5959C
    60       integer ndex(1),iq, ii, ll
     60      integer ndex2d(iip1*jjp1),ndex3d(iip1*jjp1*llm),iq, ii, ll
    6161      character*3 str
    6262      real us(ip1jmp1*llm), vs(ip1jmp1*llm)
     
    6868C
    6969      str='q  '
    70       ndex(1) = 0
     70      ndex3d = 0
     71      ndex2d = 0
    7172      ok_sync = .TRUE.
    7273
     
    8182      call gr_u_scal(llm, unat, us)
    8283      call histwrite(histid, 'u', time, us,
    83      .               iip1*jjp1*llm, ndex)
     84     .               iip1*jjp1*llm, ndex3d)
    8485C
    8586C  Vents V scalaire
     
    8788      call gr_v_scal(llm, vnat, vs)
    8889      call histwrite(histid, 'v', time, vs,
    89      .               iip1*jjp1*llm, ndex)
     90     .               iip1*jjp1*llm, ndex3d)
    9091C
    9192C  Temperature moyennee
     
    9596      enddo
    9697      call histwrite(histid, 'temp', time, tm,
    97      .                iip1*jjp1*llm, ndex)
     98     .                iip1*jjp1*llm, ndex3d)
    9899C
    99100C  Geopotentiel
    100101C
    101102      call histwrite(histid, 'phi', time, phi,
    102      .                iip1*jjp1*llm, ndex)
     103     .                iip1*jjp1*llm, ndex3d)
    103104C
    104105C  Traceurs
     
    112113          ENDIF
    113114          call histwrite(histid, str, time, q(:,:,iq),
    114      .                   iip1*jjp1*llm, ndex)
     115     .                   iip1*jjp1*llm, ndex3d)
    115116        enddo
    116117      endif
     
    118119C  Masse
    119120C
    120        call histwrite(histid, 'masse', time, masse, iip1*jjp1, ndex)
     121       call histwrite(histid, 'masse', time, masse, iip1*jjp1, ndex2d)
    121122C
    122123C  Pression au sol
    123124C
    124        call histwrite(histid, 'ps', time, ps, iip1*jjp1, ndex)
     125       call histwrite(histid, 'ps', time, ps, iip1*jjp1, ndex2d)
    125126C
    126127C  Geopotentiel au sol
    127128C
    128        call histwrite(histid, 'phis', time, phis, iip1*jjp1, ndex)
     129       call histwrite(histid, 'phis', time, phis, iip1*jjp1, ndex2d)
    129130C
    130131C  Fin
    131132C
    132       if (ok_sync) call histsync
     133      if (ok_sync) call histsync(histid)
    133134      return
    134135      end
  • LMDZ.3.3/trunk/libf/bibio/writehist.F

    r2 r29  
    5959C   Variables locales
    6060C
    61       integer ndex(1),iq, ii, ll
     61      integer iq, ii, ll
     62      integer ndexu(ip1jmp1,llm),ndexv(ip1jm,llm),ndex2d(ip1jmp1)
    6263      character*3 str
    6364      logical ok_sync
     
    6667C
    6768      str='q  '
    68       ndex(1) = 0
     69      ndexu = 0
     70      ndexv = 0
     71      ndex2d = 0
    6972      ok_sync =.TRUE.
    7073C
     
    7477C
    7578      call histwrite(histid, 'ucov', time, ucov,
    76      .               iip1*jjp1*llm, ndex)
     79     .               iip1*jjp1*llm, ndexu)
    7780
    7881C
     
    8083C
    8184      call histwrite(histvid, 'vcov', time, vcov,
    82      .               iip1*jjm*llm, ndex)
     85     .               iip1*jjm*llm, ndexv)
    8386
    8487C
     
    8689C
    8790      call histwrite(histid, 'teta', time, teta,
    88      .                iip1*jjp1*llm, ndex)
     91     .                iip1*jjp1*llm, ndexu)
    8992C
    9093C  Geopotentiel
    9194C
    9295      call histwrite(histid, 'phi', time, phi,
    93      .                iip1*jjp1*llm, ndex)
     96     .                iip1*jjp1*llm, ndexu)
    9497C
    9598C  Traceurs
     
    103106          ENDIF
    104107          call histwrite(histid, str, time, q(:,:,iq),
    105      .                   iip1*jjp1*llm, ndex)
     108     .                   iip1*jjp1*llm, ndexu)
    106109        enddo
    107110      endif
     
    109112C  Masse
    110113C
    111       call histwrite(histid, 'masse', time, masse, iip1*jjp1, ndex)
     114      call histwrite(histid, 'masse', time, masse, iip1*jjp1, ndex2d)
    112115C
    113116C  Pression au sol
    114117C
    115       call histwrite(histid, 'ps', time, ps, iip1*jjp1, ndex)
     118      call histwrite(histid, 'ps', time, ps, iip1*jjp1, ndex2d)
    116119C
    117120C  Geopotentiel au sol
    118121C
    119       call histwrite(histid, 'phis', time, phis, iip1*jjp1, ndex)
     122      call histwrite(histid, 'phis', time, phis, iip1*jjp1, ndex2d)
    120123C
    121124C  Fin
    122125C
    123       if (ok_sync) call histsync
     126      if (ok_sync) then
     127        call histsync(histid)
     128        call histsync(histvid)
     129      endif
    124130      return
    125131      end
Note: See TracChangeset for help on using the changeset viewer.