Changeset 778


Ignore:
Timestamp:
Sep 12, 2012, 3:45:33 PM (12 years ago)
Author:
slebonnois
Message:

SL: bug correction for a file specific to Venus and Titan, + Venus gravity waves routine update (work still in progress)

Location:
trunk
Files:
1 added
1 deleted
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.TITAN/libf/phytitan/readstartphy.F

    r102 r778  
    2020#include "temps.h"
    2121c======================================================================
     22      integer ngridmx
     23      parameter (ngridmx=(2+(jjm-1)*iim - 1/jjm))
     24
    2225      CHARACTER*(*) fichnom
    23       REAL rlat(klon), rlon(klon)
    24       REAL tsol(klon)
    25       REAL tsoil(klon,nsoilmx)
    26       REAL albe(klon)
     26      REAL rlat(ngridmx), rlon(ngridmx)
     27      REAL tsol(ngridmx)
     28      REAL tsoil(ngridmx,nsoilmx)
     29      REAL albe(ngridmx)
    2730cIM BEG alblw
    28       REAL alblw(klon)
     31      REAL alblw(ngridmx)
    2932cIM END alblw
    30       REAL radsol(klon)
    31       REAL sollw(klon)
    32       real solsw(klon)
    33       real fder(klon)
     33      REAL radsol(ngridmx)
     34      REAL sollw(ngridmx)
     35      real solsw(ngridmx)
     36      real fder(ngridmx)
    3437      INTEGER length
    3538      PARAMETER (length=100)
     
    114117         PRINT*, 'phyetat0: Le champ <TS> est present'
    115118#ifdef NC_DOUBLE
    116          ierr = NF_GET_VAR_DOUBLE(nid, nvarid, tsol(1))
    117 #else
    118          ierr = NF_GET_VAR_REAL(nid, nvarid, tsol(1))
     119         ierr = NF_GET_VAR_DOUBLE(nid, nvarid, tsol)
     120#else
     121         ierr = NF_GET_VAR_REAL(nid, nvarid, tsol)
    119122#endif
    120123         IF (ierr.NE.NF_NOERR) THEN
     
    124127         xmin = 1.0E+20
    125128         xmax = -1.0E+20
    126          DO i = 1, klon
     129         DO i = 1, ngridmx
    127130            xmin = MIN(tsol(i),xmin)
    128131            xmax = MAX(tsol(i),xmax)
     
    143146         PRINT*, "phyetat0: Le champ <Tsoil"//str2//"> est absent"
    144147         PRINT*, "          Il prend donc la valeur de surface"
    145          DO i=1, klon
     148         DO i=1, ngridmx
    146149             tsoil(i,isoil)=tsol(i)
    147150         ENDDO
     
    158161      ENDIF
    159162      ENDDO
     163
    160164c
    161165c Lecture de albedo au sol:
     
    179183         xmin = 1.0E+20
    180184         xmax = -1.0E+20
    181          DO i = 1, klon
     185         DO i = 1, ngridmx
    182186            xmin = MIN(albe(i),xmin)
    183187            xmax = MAX(albe(i),xmax)
     
    207211      xmin = 1.0E+20
    208212      xmax = -1.0E+20
    209       DO i = 1, klon
     213      DO i = 1, ngridmx
    210214         xmin = MIN(solsw(i),xmin)
    211215         xmax = MAX(solsw(i),xmax)
     
    233237      xmin = 1.0E+20
    234238      xmax = -1.0E+20
    235       DO i = 1, klon
     239      DO i = 1, ngridmx
    236240         xmin = MIN(sollw(i),xmin)
    237241         xmax = MAX(sollw(i),xmax)
     
    260264      xmin = 1.0E+20
    261265      xmax = -1.0E+20
    262       DO i = 1, klon
     266      DO i = 1, ngridmx
    263267         xmin = MIN(fder(i),xmin)
    264268         xmax = MAX(fder(i),xmax)
     
    285289      xmin = 1.0E+20
    286290      xmax = -1.0E+20
    287       DO i = 1, klon
     291      DO i = 1, ngridmx
    288292         xmin = MIN(radsol(i),xmin)
    289293         xmax = MAX(radsol(i),xmax)
  • trunk/LMDZ.VENUS/libf/phyvenus/YOEGWD.h

    r3 r778  
    1 C     -----------------------------------------------------------------
    2 C*    *COMMON* *YOEGWD* - PARAMETERS FOR GRAVITY WAVE DRAG CALCULATIONS
    3 C     -----------------------------------------------------------------
    4 C
    5       integer NKTOPG,NTOP
    6       real GFRCRIT,GKWAKE,GRCRIT,GVCRIT,GKDRAG,GKLIFT
    7       real GHMAX,GRAHILO,GSIGCR,GSSEC,GTSEC,GVSEC
    8       COMMON/YOEGWD/ GFRCRIT,GKWAKE,GRCRIT,GVCRIT,GKDRAG,GKLIFT
    9      *        ,GHMAX,GRAHILO,GSIGCR,NKTOPG,NTOP,GSSEC,GTSEC,GVSEC
     1!     -----------------------------------------------------------------
     2!*    *COMMON* *YOEGWD* - PARAMETERS FOR GRAVITY WAVE DRAG CALCULATIONS
     3!     -----------------------------------------------------------------
     4!
     5      integer :: NKTOPG,NTOP
     6      real    :: GFRCRIT,GKWAKE,GRCRIT,GVCRIT,GKDRAG,GKLIFT
     7      real    :: GHMAX,GRAHILO,GSIGCR,GSSEC,GTSEC,GVSEC
     8      COMMON/YOEGWD/ GFRCRIT,GKWAKE,GRCRIT,GVCRIT,GKDRAG,GKLIFT  &
     9         ,GHMAX,GRAHILO,GSIGCR,NKTOPG,NTOP,GSSEC,GTSEC,GVSEC
    1010
  • trunk/LMDZ.VENUS/libf/phyvenus/readstartphy.F

    r101 r778  
    2020#include "temps.h"
    2121c======================================================================
     22      integer ngridmx
     23      parameter (ngridmx=(2+(jjm-1)*iim - 1/jjm))
     24
    2225      CHARACTER*(*) fichnom
    23       REAL rlat(klon), rlon(klon)
    24       REAL tsol(klon)
    25       REAL tsoil(klon,nsoilmx)
    26       REAL albe(klon)
     26      REAL rlat(ngridmx), rlon(ngridmx)
     27      REAL tsol(ngridmx)
     28      REAL tsoil(ngridmx,nsoilmx)
     29      REAL albe(ngridmx)
    2730cIM BEG alblw
    28       REAL alblw(klon)
     31      REAL alblw(ngridmx)
    2932cIM END alblw
    30       REAL radsol(klon)
    31       REAL sollw(klon)
    32       real solsw(klon)
    33       real fder(klon)
     33      REAL radsol(ngridmx)
     34      REAL sollw(ngridmx)
     35      real solsw(ngridmx)
     36      real fder(ngridmx)
    3437      INTEGER length
    3538      PARAMETER (length=100)
     
    114117         PRINT*, 'phyetat0: Le champ <TS> est present'
    115118#ifdef NC_DOUBLE
    116          ierr = NF_GET_VAR_DOUBLE(nid, nvarid, tsol(1))
    117 #else
    118          ierr = NF_GET_VAR_REAL(nid, nvarid, tsol(1))
     119         ierr = NF_GET_VAR_DOUBLE(nid, nvarid, tsol)
     120#else
     121         ierr = NF_GET_VAR_REAL(nid, nvarid, tsol)
    119122#endif
    120123         IF (ierr.NE.NF_NOERR) THEN
     
    124127         xmin = 1.0E+20
    125128         xmax = -1.0E+20
    126          DO i = 1, klon
     129         DO i = 1, ngridmx
    127130            xmin = MIN(tsol(i),xmin)
    128131            xmax = MAX(tsol(i),xmax)
     
    143146         PRINT*, "phyetat0: Le champ <Tsoil"//str2//"> est absent"
    144147         PRINT*, "          Il prend donc la valeur de surface"
    145          DO i=1, klon
     148         DO i=1, ngridmx
    146149             tsoil(i,isoil)=tsol(i)
    147150         ENDDO
     
    158161      ENDIF
    159162      ENDDO
     163
    160164c
    161165c Lecture de albedo au sol:
     
    179183         xmin = 1.0E+20
    180184         xmax = -1.0E+20
    181          DO i = 1, klon
     185         DO i = 1, ngridmx
    182186            xmin = MIN(albe(i),xmin)
    183187            xmax = MAX(albe(i),xmax)
     
    207211      xmin = 1.0E+20
    208212      xmax = -1.0E+20
    209       DO i = 1, klon
     213      DO i = 1, ngridmx
    210214         xmin = MIN(solsw(i),xmin)
    211215         xmax = MAX(solsw(i),xmax)
     
    233237      xmin = 1.0E+20
    234238      xmax = -1.0E+20
    235       DO i = 1, klon
     239      DO i = 1, ngridmx
    236240         xmin = MIN(sollw(i),xmin)
    237241         xmax = MAX(sollw(i),xmax)
     
    260264      xmin = 1.0E+20
    261265      xmax = -1.0E+20
    262       DO i = 1, klon
     266      DO i = 1, ngridmx
    263267         xmin = MIN(fder(i),xmin)
    264268         xmax = MAX(fder(i),xmax)
     
    285289      xmin = 1.0E+20
    286290      xmax = -1.0E+20
    287       DO i = 1, klon
     291      DO i = 1, ngridmx
    288292         xmin = MIN(radsol(i),xmin)
    289293         xmax = MAX(radsol(i),xmax)
Note: See TracChangeset for help on using the changeset viewer.