Ignore:
Timestamp:
Apr 18, 2015, 10:29:29 AM (10 years ago)
Author:
millour
Message:

Some partial cleanup on uses of "dimensions.h" in physics.
At this point 3D gcm compiles and bench seems to run fine :-)
EM

Location:
dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd
Files:
44 edited

Legend:

Unmodified
Added
Removed
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/aaam_bud.F90

    r3814 r3818  
    66
    77  USE dimphy
     8  USE mod_grid_phy_lmdz, ONLY: nbp_lon, nbp_lat
    89  IMPLICIT NONE
    910  ! ======================================================================
     
    5859  ! ===================
    5960
    60   ! iim--common-I: Number of longitude intervals
     61  ! nbp_lon--common-I: Number of longitude intervals
    6162  ! jjm--common-I: Number of latitude intervals
    6263  ! klon-common-I: Number of points seen by the physics
    63   ! iim*(jjm-1)+2 for instance
     64  ! nbp_lon*(jjm-1)+2 for instance
    6465  ! klev-common-I: Number of vertical layers
    6566  ! ======================================================================
     
    8485  ! ======================================================================
    8586
    86   include "dimensions.h"
    87   ! cc#include "dimphy.h"
    88 
    8987  ! ARGUMENTS
    9088
     
    121119  ! PUT AAM QUANTITIES AT ZERO:
    122120
    123   IF (iim+1>801 .OR. jjm+1>401) THEN
     121  IF (nbp_lon+1>801 .OR. nbp_lat>401) THEN
    124122    abort_message = 'Pb de dimension dans aaam_bud'
    125123    CALL abort_physic(modname, abort_message, 1)
     
    129127  hadley = 1.E18
    130128  hadday = 1.E18*24.*3600.
    131   dlat = xpi/real(jjm)
    132   dlon = 2.*xpi/real(iim)
     129  dlat = xpi/real(nbp_lat-1)
     130  dlon = 2.*xpi/real(nbp_lon)
    133131
    134132  DO iax = 1, 3
     
    155153  zlat(1) = plat(l)*xpi/180.
    156154
    157   DO i = 1, iim + 1
     155  DO i = 1, nbp_lon + 1
    158156
    159157    zs(i, 1) = phis(l)/rg
     
    169167
    170168
    171   DO j = 2, jjm
     169  DO j = 2, nbp_lat-1
    172170
    173171    ! Values at Greenwich (Periodicity)
    174172
    175     zs(iim+1, j) = phis(l+1)/rg
    176     ps(iim+1, j) = p(l+1, 1)
    177     ssou(iim+1, j) = dragu(l+1) + liftu(l+1)
    178     ssov(iim+1, j) = dragv(l+1) + liftv(l+1)
    179     blsu(iim+1, j) = phyu(l+1) - dragu(l+1) - liftu(l+1)
    180     blsv(iim+1, j) = phyv(l+1) - dragv(l+1) - liftv(l+1)
    181     zlon(iim+1) = -plon(l+1)*xpi/180.
     173    zs(nbp_lon+1, j) = phis(l+1)/rg
     174    ps(nbp_lon+1, j) = p(l+1, 1)
     175    ssou(nbp_lon+1, j) = dragu(l+1) + liftu(l+1)
     176    ssov(nbp_lon+1, j) = dragv(l+1) + liftv(l+1)
     177    blsu(nbp_lon+1, j) = phyu(l+1) - dragu(l+1) - liftu(l+1)
     178    blsv(nbp_lon+1, j) = phyv(l+1) - dragv(l+1) - liftv(l+1)
     179    zlon(nbp_lon+1) = -plon(l+1)*xpi/180.
    182180    zlat(j) = plat(l+1)*xpi/180.
    183181
    184     ub(iim+1, j) = 0.
    185     vb(iim+1, j) = 0.
     182    ub(nbp_lon+1, j) = 0.
     183    vb(nbp_lon+1, j) = 0.
    186184    DO k = 1, nlev
    187       ub(iim+1, j) = ub(iim+1, j) + u(l+1, k)*(p(l+1,k)-p(l+1,k+1))/rg
    188       vb(iim+1, j) = vb(iim+1, j) + v(l+1, k)*(p(l+1,k)-p(l+1,k+1))/rg
    189     END DO
    190 
    191 
    192     DO i = 1, iim
     185      ub(nbp_lon+1, j) = ub(nbp_lon+1, j) + u(l+1, k)*(p(l+1,k)-p(l+1,k+1))/rg
     186      vb(nbp_lon+1, j) = vb(nbp_lon+1, j) + v(l+1, k)*(p(l+1,k)-p(l+1,k+1))/rg
     187    END DO
     188
     189
     190    DO i = 1, nbp_lon
    193191
    194192      l = l + 1
     
    215213  ! South Pole
    216214
    217   IF (jjm>1) THEN
     215  IF (nbp_lat-1>1) THEN
    218216    l = l + 1
    219     ub(1, jjm+1) = 0.
    220     vb(1, jjm+1) = 0.
     217    ub(1, nbp_lat) = 0.
     218    vb(1, nbp_lat) = 0.
    221219    DO k = 1, nlev
    222       ub(1, jjm+1) = ub(1, jjm+1) + u(l, k)*(p(l,k)-p(l,k+1))/rg
    223       vb(1, jjm+1) = vb(1, jjm+1) + v(l, k)*(p(l,k)-p(l,k+1))/rg
    224     END DO
    225     zlat(jjm+1) = plat(l)*xpi/180.
    226 
    227     DO i = 1, iim + 1
    228       zs(i, jjm+1) = phis(l)/rg
    229       ps(i, jjm+1) = p(l, 1)
    230       ssou(i, jjm+1) = dragu(l) + liftu(l)
    231       ssov(i, jjm+1) = dragv(l) + liftv(l)
    232       blsu(i, jjm+1) = phyu(l) - dragu(l) - liftu(l)
    233       blsv(i, jjm+1) = phyv(l) - dragv(l) - liftv(l)
    234       ub(i, jjm+1) = ub(1, jjm+1)
    235       vb(i, jjm+1) = vb(1, jjm+1)
     220      ub(1, nbp_lat) = ub(1, nbp_lat) + u(l, k)*(p(l,k)-p(l,k+1))/rg
     221      vb(1, nbp_lat) = vb(1, nbp_lat) + v(l, k)*(p(l,k)-p(l,k+1))/rg
     222    END DO
     223    zlat(nbp_lat) = plat(l)*xpi/180.
     224
     225    DO i = 1, nbp_lon + 1
     226      zs(i, nbp_lat) = phis(l)/rg
     227      ps(i, nbp_lat) = p(l, 1)
     228      ssou(i, nbp_lat) = dragu(l) + liftu(l)
     229      ssov(i, nbp_lat) = dragv(l) + liftv(l)
     230      blsu(i, nbp_lat) = phyu(l) - dragu(l) - liftu(l)
     231      blsv(i, nbp_lat) = phyv(l) - dragv(l) - liftv(l)
     232      ub(i, nbp_lat) = ub(1, nbp_lat)
     233      vb(i, nbp_lat) = vb(1, nbp_lat)
    236234    END DO
    237235  END IF
     
    240238  ! MOMENT ANGULAIRE
    241239
    242   DO j = 1, jjm
    243     DO i = 1, iim
     240  DO j = 1, nbp_lat-1
     241    DO i = 1, nbp_lon
    244242
    245243      raam(1) = raam(1) - rea**3*dlon*dlat*0.5*(cos(zlon(i))*sin(zlat(j))*cos &
     
    274272
    275273
    276   DO j = 1, jjm
    277     DO i = 1, iim
     274  DO j = 1, nbp_lat-1
     275    DO i = 1, nbp_lon
    278276      tmou(1) = tmou(1) - rea**2*dlon*0.5*sin(zlon(i))*(zs(i,j)-zs(i,j+1))*( &
    279277        cos(zlat(j+1))*ps(i,j+1)+cos(zlat(j))*ps(i,j))
     
    283281  END DO
    284282
    285   DO j = 2, jjm
    286     DO i = 1, iim
     283  DO j = 2, nbp_lat-1
     284    DO i = 1, nbp_lon
    287285      tmou(1) = tmou(1) + rea**2*dlat*0.5*sin(zlat(j))*(zs(i+1,j)-zs(i,j))*( &
    288286        cos(zlon(i+1))*ps(i+1,j)+cos(zlon(i))*ps(i,j))
     
    298296
    299297  l = 1
    300   DO j = 2, jjm
    301     DO i = 1, iim
     298  DO j = 2, nbp_lat-1
     299    DO i = 1, nbp_lon
    302300      l = l + 1
    303301      tsso(1) = tsso(1) - rea**3*cos(zlat(j))*dlon*dlat*ssou(i, j)*sin(zlat(j &
     
    341339100 FORMAT (F12.5, 15(1X,F12.5))
    342340
    343   ! write(iam+1,*)((zs(i,j),i=1,iim),j=1,jjm+1)
    344   ! write(iam+1,*)((ps(i,j),i=1,iim),j=1,jjm+1)
    345   ! write(iam+1,*)((ub(i,j),i=1,iim),j=1,jjm+1)
    346   ! write(iam+1,*)((vb(i,j),i=1,iim),j=1,jjm+1)
    347   ! write(iam+1,*)((ssou(i,j),i=1,iim),j=1,jjm+1)
    348   ! write(iam+1,*)((ssov(i,j),i=1,iim),j=1,jjm+1)
    349   ! write(iam+1,*)((blsu(i,j),i=1,iim),j=1,jjm+1)
    350   ! write(iam+1,*)((blsv(i,j),i=1,iim),j=1,jjm+1)
     341  ! write(iam+1,*)((zs(i,j),i=1,nbp_lon),j=1,nbp_lat)
     342  ! write(iam+1,*)((ps(i,j),i=1,nbp_lon),j=1,nbp_lat)
     343  ! write(iam+1,*)((ub(i,j),i=1,nbp_lon),j=1,nbp_lat)
     344  ! write(iam+1,*)((vb(i,j),i=1,nbp_lon),j=1,nbp_lat)
     345  ! write(iam+1,*)((ssou(i,j),i=1,nbp_lon),j=1,nbp_lat)
     346  ! write(iam+1,*)((ssov(i,j),i=1,nbp_lon),j=1,nbp_lat)
     347  ! write(iam+1,*)((blsu(i,j),i=1,nbp_lon),j=1,nbp_lat)
     348  ! write(iam+1,*)((blsv(i,j),i=1,nbp_lon),j=1,nbp_lat)
    351349
    352350  aam = raam(3)
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/add_pbl_tend.F90

    r3809 r3818  
    1515  USE phys_local_var_mod
    1616  USE phys_state_var_mod
     17  USE mod_grid_phy_lmdz, ONLY: nbp_lev
    1718  IMPLICIT NONE
    18   include "dimensions.h"
    19   REAL hthturb_gcssold(llm)
    20   REAL hqturb_gcssold(llm)
    21   REAL dtime_frcg
     19  REAL,SAVE,ALLOCATABLE :: hthturb_gcssold(:)
     20  REAL,SAVE,ALLOCATABLE :: hqturb_gcssold(:)
     21!$OMP THREADPRIVATE(hthturb_gcssold,hqturb_gcssold)
     22  REAL,SAVE :: dtime_frcg
     23  LOGICAL,SAVE :: turb_fcg_gcssold
     24  LOGICAL,SAVE :: firstcall=.true.
     25!$OMP THREADPRIVATE(firstcall,turb_fcg_gcssold,dtime_frcg)
    2226  INTEGER abortphy
    23   LOGICAL turb_fcg_gcssold
    24   COMMON /turb_forcing/dtime_frcg, hthturb_gcssold, hqturb_gcssold, &
    25     turb_fcg_gcssold
     27!  COMMON /turb_forcing/dtime_frcg, hthturb_gcssold, hqturb_gcssold, &
     28!    turb_fcg_gcssold
    2629
    2730  ! Arguments :
     
    3639  REAL zzdt(klon, klev), zzdq(klon, klev)
    3740  INTEGER i, k
     41
     42  IF (firstcall) THEN
     43    ALLOCATE(hthturb_gcssold(nbp_lev))
     44    ALLOCATE(hqturb_gcssold(nbp_lev))
     45    firstcall=.false.
     46  ENDIF
    3847
    3948  IF (turb_fcg_gcssold) THEN
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/atm2geo.F90

    r3809 r3818  
    66  USE mod_phys_lmdz_para
    77  IMPLICIT NONE
    8   INCLUDE 'dimensions.h'
    98  INCLUDE 'YOMCST.h'
    109!
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/calltherm.F90

    r3817 r3818  
    2424
    2525      implicit none
    26 #include "dimensions.h"
    27 !#include "dimphy.h"
    2826#include "thermcell.h"
    2927
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/calwake.F90

    r3809 r3818  
    2222  IMPLICIT NONE
    2323  ! ======================================================================
    24   include "dimensions.h"
    25   ! #include "dimphy.h"
    2624  include "YOMCST.h"
    2725
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/conccm.F90

    r3809 r3818  
    1212  ! (schema standard du modele NCAR CCM2)
    1313  ! ======================================================================
    14   ! ym#include "dimensions.h"
    15   ! ym#include "dimphy.h"
    1614  include "YOMCST.h"
    1715  include "YOETHF.h"
     
    160158  ! simplifier la lecture et la comprehension.
    161159  ! -----------------------------------------------------------------------
    162   ! ym#include "dimensions.h"
    163   ! ym#include "dimphy.h"
    164160  INTEGER pcnst ! nombre de traceurs passifs
    165161  PARAMETER (pcnst=1)
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/concvl.F90

    r3817 r3818  
    8484
    8585  include "clesphys.h"
    86   include "dimensions.h"
    8786
    8887  INTEGER iflag_clos
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/conema3.F90

    r3814 r3818  
    5353  ! ======================================================================
    5454
    55   include "dimensions.h"
    5655  include "conema3.h"
    5756  INTEGER i, l, m, itra
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/conemav.F90

    r3814 r3818  
    4141  ! Ice_flag-input-L-TRUE->prise en compte de la thermodynamique de la glace
    4242  ! ======================================================================
    43 
    44   include "dimensions.h"
    4543
    4644
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/convect3.F90

    r3814 r3818  
    1818  USE infotrac_phy, ONLY: nbtr
    1919  IMPLICIT NONE
    20   include "dimensions.h"
    2120  INTEGER na
    2221  PARAMETER (na=60)
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/cva_driver.F90

    r3817 r3818  
    152152! ..............................END PROLOGUE.............................
    153153
    154 
    155   include "dimensions.h"
    156 !!!!!#include "dimphy.h"
    157 
    158 
    159154! Input
    160155  INTEGER len
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/diagphy.F90

    r3809 r3818  
    5050  IMPLICIT NONE
    5151
    52   include "dimensions.h"
    53   ! cccc#include "dimphy.h"
    5452  include "YOMCST.h"
    5553  include "YOETHF.h"
     
    209207  IMPLICIT NONE
    210208
    211   include "dimensions.h"
    212   ! ccccc#include "dimphy.h"
    213209  include "YOMCST.h"
    214210  include "YOETHF.h"
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/fonte_neige_mod.F90

    r3814 r3818  
    141141!   evap
    142142!
    143   INCLUDE "dimensions.h"
    144143  INCLUDE "YOETHF.h"
    145144  INCLUDE "YOMCST.h"
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/geo2atm.F90

    r3809 r3818  
    77
    88  IMPLICIT NONE
    9   INCLUDE 'dimensions.h'
    109  INCLUDE 'YOMCST.h'
    1110
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/hgardfou.F90

    r3817 r3818  
    1010  ! Verifier la temperature
    1111  ! ======================================================================
    12   include "dimensions.h"
    1312  include "YOMCST.h"
    1413  REAL t(klon, klev), tsol(klon, nbsrf)
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/ini_histday_seri.h

    r3809 r3818  
    1313         CALL ymds2ju(annee_ref, 1, idayref, 0.0, zjulian)
    1414!
    15          CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlon,zx_lon)
    16          DO i = 1, iim
     15         CALL gr_fi_ecrit(1,klon,nbp_lon,jjmp1,rlon,zx_lon)
     16         DO i = 1, nbp_lon
    1717            zx_lon(i,1) = rlon(i+1)
    1818            zx_lon(i,jjmp1) = rlon(i+1)
     
    2121            znivsig(ll)=REAL(ll)
    2222         ENDDO
    23          CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlat,zx_lat)
     23         CALL gr_fi_ecrit(1,klon,nbp_lon,jjmp1,rlat,zx_lat)
    2424!
    2525         imin_debut=1
     
    2929!
    3030         CALL histbeg("histday_seri.nc",  &
    31                        iim,zx_lon(:,1), jjmp1,zx_lat(1,:), &
     31                       nbp_lon,zx_lon(:,1), jjmp1,zx_lat(1,:), &
    3232                       imin_debut,nbpti,jmin_debut,nbptj, &
    3333                       itau_phy, zjulian, dtime, &
     
    4040         CALL histdef(nid_day_seri, "bilTOA",  &
    4141                      "Net radiation at model top", "W/m2", &
    42                       iim,jjmp1,nhori, 1,1,1, -99, 32,  &
     42                      nbp_lon,jjmp1,nhori, 1,1,1, -99, 32,  &
    4343                      "ave(X)", zstophy,zout)
    4444!
    4545         CALL histdef(nid_day_seri, "bils",  &
    4646                      "Net downward energy flux at surface","W/m2", &
    47                       iim,jjmp1,nhori, 1,1,1, -99, 32,  &
     47                      nbp_lon,jjmp1,nhori, 1,1,1, -99, 32,  &
    4848                      "ave(X)", zstophy,zout)
    4949!
    5050         CALL histdef(nid_day_seri, "ecin",  &
    5151                      "Total kinetic energy (per unit area)","J/m2", &
    52                       iim,jjmp1,nhori, 1,1,1, -99, 32, &
     52                      nbp_lon,jjmp1,nhori, 1,1,1, -99, 32, &
    5353                      "ave(X)", zstophy,zout)
    5454!
     
    5959                     "Total relative angular momentum (per unit area)", &
    6060                     "kg/s", &
    61                       iim,jjmp1,nhori, 1,1,1, -99, 32, &
     61                      nbp_lon,jjmp1,nhori, 1,1,1, -99, 32, &
    6262                      "ave(X)", zstophy,zout)
    6363!
    6464         CALL histdef(nid_day_seri, "frictor",  &
    6565                     "Friction torque (per unit area)", "N/m", &
    66                       iim,jjmp1,nhori, 1,1,1, -99, 32, &
     66                      nbp_lon,jjmp1,nhori, 1,1,1, -99, 32, &
    6767                      "ave(X)", zstophy,zout)
    6868!
    6969         CALL histdef(nid_day_seri, "mountor",  &
    7070                     "Mountain torque (per unit area)", "N/m", &
    71                       iim,jjmp1,nhori, 1,1,1, -99, 32, &
     71                      nbp_lon,jjmp1,nhori, 1,1,1, -99, 32, &
    7272                      "ave(X)", zstophy,zout)
    7373!
     
    7777                     "Axial angular momentum (per unit area)", &
    7878                     "kg/s", &
    79                       iim,jjmp1,nhori, 1,1,1, -99, 32, &
     79                      nbp_lon,jjmp1,nhori, 1,1,1, -99, 32, &
    8080                      "ave(X)", zstophy,zout)
    8181!
    8282         CALL histdef(nid_day_seri, "torsfc",  &
    8383              "Total surface torque (including mountain torque)", "N/m", &
    84                       iim,jjmp1,nhori, 1,1,1, -99, 32, &
     84                      nbp_lon,jjmp1,nhori, 1,1,1, -99, 32, &
    8585                      "ave(X)", zstophy,zout)
    8686!
     
    8989         CALL histdef(nid_day_seri, "tamv",  &
    9090                      "Temperature (mass-weighted vert. ave)", "K", &
    91                       iim,jjmp1,nhori, 1,1,1, -99, 32, &
     91                      nbp_lon,jjmp1,nhori, 1,1,1, -99, 32, &
    9292                      "ave(X)", zstophy,zout)
    9393!
    9494         CALL histdef(nid_day_seri, "psol",  &
    9595                      "Surface pressure", "Pa", &
    96                       iim,jjmp1,nhori, 1,1,1, -99, 32,  &
     96                      nbp_lon,jjmp1,nhori, 1,1,1, -99, 32,  &
    9797                      "ave(X)", zstophy,zout)
    9898!
     
    100100                      "Evaporation and sublimation (per unit area)",  &
    101101                      "kg/(m2*s)", &
    102                       iim,jjmp1,nhori, 1,1,1, -99, 32,  &
     102                      nbp_lon,jjmp1,nhori, 1,1,1, -99, 32,  &
    103103                      "ave(X)", zstophy,zout)
    104104!
     
    106106!    .         "SnowFrac",
    107107!    .         "Snow-covered area ", "%", 
    108 !    .         iim,jjmp1,nhori, 1,1,1, -99, 32,
     108!    .         nbp_lon,jjmp1,nhori, 1,1,1, -99, 32,
    109109!    .         "ave(X)", zstophy,zout)
    110110!
     
    113113!IM 191104  .                "Snow Depth (water equivalent)", "kg/m2",
    114114!    .                "Snow Mass", "kg/m2",
    115 !    .                iim,jjmp1,nhori, 1,1,1, -99, 32,
     115!    .                nbp_lon,jjmp1,nhori, 1,1,1, -99, 32,
    116116!    .               "ave(X)", zstophy,zout)
    117117!
     
    119119               "tsol_"//clnsurf(is_oce),  &
    120120               "SST over open (ice-free) ocean ", "K",   &
    121                iim,jjmp1,nhori, 1,1,1, -99, 32, &
     121               nbp_lon,jjmp1,nhori, 1,1,1, -99, 32, &
    122122               "ave(X)", zstophy,zout)
    123123!
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/ini_paramLMDZ_phy.h

    r3809 r3818  
    1515       CALL ymds2ju(annee_ref, 1, idayref, 0.0, zjulian)
    1616!
    17        CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlon_glo,zx_lon)
    18        if (iim.gt.1) then
    19        DO i = 1, iim
     17       CALL gr_fi_ecrit(1,klon,nbp_lon,nbp_lat,rlon_glo,zx_lon)
     18       if (nbp_lon.gt.1) then
     19       DO i = 1, nbp_lon
    2020         zx_lon(i,1) = rlon_glo(i+1)
    21          zx_lon(i,jjmp1) = rlon_glo(i+1)
     21         zx_lon(i,nbp_lat) = rlon_glo(i+1)
    2222       ENDDO
    2323       endif
    24        CALL gr_fi_ecrit(1,klon,iim,jjmp1,rlat_glo,zx_lat)
     24       CALL gr_fi_ecrit(1,klon,nbp_lon,nbp_lat,rlat_glo,zx_lat)
    2525!
    2626       CALL histbeg("paramLMDZ_phy.nc",  &
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/initphysto.F90

    r3816 r3818  
    1313  !USE temps_phy_mod
    1414  USE inifis_mod, ONLY: day_ref, annee_ref
     15  USE mod_grid_phy_lmdz, ONLY: nbp_lon, nbp_lat, nbp_lev
    1516 
    1617  IMPLICIT NONE
     
    4243!
    4344!   Declarations
    44   INCLUDE "dimensions.h"
    4545  INCLUDE "description.h"
    4646
     
    5555  INTEGER nhoriid, i
    5656  INTEGER l,k
    57   REAL nivsigs(llm)
     57  REAL nivsigs(nbp_lev)
    5858  INTEGER tau0
    5959  REAL zjulian
     
    6363  INTEGER zan, idayref
    6464  LOGICAL ok_sync
    65   REAL zx_lon(iim,jjm+1), zx_lat(iim,jjm+1)
     65  REAL zx_lon(nbp_lon,nbp_lat), zx_lat(nbp_lon,nbp_lat)
    6666  CHARACTER(len=12) :: nvar
    6767
     
    8484!  Appel a histvert pour la grille verticale
    8585!
    86   DO l=1,llm
     86  DO l=1,nbp_lev
    8787     nivsigs(l)=REAL(l)
    8888  ENDDO
     
    9090  CALL histvert(fileid, 'sig_s', 'Niveaux sigma', &
    9191       'sigma_level', &
    92        llm, nivsigs, zvertiid)
     92       nbp_lev, nivsigs, zvertiid)
    9393!
    9494!  Appels a histdef pour la definition des variables a sauvegarder
    9595!
    9696  CALL histdef(fileid, "phis", "Surface geop. height", "-", &
    97        iim,jj_nb,nhoriid, 1,1,1, -99, 32, &
     97       nbp_lon,jj_nb,nhoriid, 1,1,1, -99, 32, &
    9898       "once", t_ops, t_wrt)
    9999 
    100100  CALL histdef(fileid, "aire", "Grid area", "-", &
    101        iim,jj_nb,nhoriid, 1,1,1, -99, 32, &
     101       nbp_lon,jj_nb,nhoriid, 1,1,1, -99, 32, &
    102102       "once", t_ops, t_wrt)
    103103
    104104  CALL histdef(fileid, "longitudes", "longitudes", "-", &
    105        iim,jj_nb,nhoriid, 1,1,1, -99, 32, &
     105       nbp_lon,jj_nb,nhoriid, 1,1,1, -99, 32, &
    106106       "once", t_ops, t_wrt)
    107107
    108108  CALL histdef(fileid, "latitudes", "latitudes", "-", &
    109        iim,jj_nb,nhoriid, 1,1,1, -99, 32, &
     109       nbp_lon,jj_nb,nhoriid, 1,1,1, -99, 32, &
    110110       "once", t_ops, t_wrt)
    111111! T
    112   CALL histdef(fileid, 't', 'Temperature', 'K', iim, jj_nb, nhoriid, &
    113        llm, 1, llm, zvertiid, 32, 'inst(X)', t_ops, t_wrt)
     112  CALL histdef(fileid, 't', 'Temperature', 'K', nbp_lon, jj_nb, nhoriid, &
     113       nbp_lev, 1, nbp_lev, zvertiid, 32, 'inst(X)', t_ops, t_wrt)
    114114! mfu
    115   CALL histdef(fileid, 'mfu', 'flx m. pan. mt', 'kg m/s',iim, jj_nb, nhoriid, &
    116        llm, 1, llm, zvertiid,32, 'inst(X)', t_ops, t_wrt)
     115  CALL histdef(fileid, 'mfu', 'flx m. pan. mt', 'kg m/s',nbp_lon, jj_nb, nhoriid, &
     116       nbp_lev, 1, nbp_lev, zvertiid,32, 'inst(X)', t_ops, t_wrt)
    117117! mfd
    118   CALL histdef(fileid, 'mfd', 'flx m. pan. des', 'kg m/s',iim, jj_nb, nhoriid, &
    119        llm, 1, llm, zvertiid, 32, 'inst(X)', t_ops, t_wrt)
     118  CALL histdef(fileid, 'mfd', 'flx m. pan. des', 'kg m/s',nbp_lon, jj_nb, nhoriid, &
     119       nbp_lev, 1, nbp_lev, zvertiid, 32, 'inst(X)', t_ops, t_wrt)
    120120! en_u
    121   CALL histdef(fileid, 'en_u', 'flx ent pan mt', 'kg m/s', iim, jj_nb, nhoriid, &
    122        llm, 1, llm, zvertiid,32, 'inst(X)', t_ops, t_wrt)
     121  CALL histdef(fileid, 'en_u', 'flx ent pan mt', 'kg m/s', nbp_lon, jj_nb, nhoriid, &
     122       nbp_lev, 1, nbp_lev, zvertiid,32, 'inst(X)', t_ops, t_wrt)
    123123! de_u
    124   CALL histdef(fileid, 'de_u', 'flx det pan mt', 'kg m/s',iim, jj_nb, nhoriid, &
    125        llm, 1, llm, zvertiid,32, 'inst(X)', t_ops, t_wrt)
     124  CALL histdef(fileid, 'de_u', 'flx det pan mt', 'kg m/s',nbp_lon, jj_nb, nhoriid, &
     125       nbp_lev, 1, nbp_lev, zvertiid,32, 'inst(X)', t_ops, t_wrt)
    126126! en_d
    127   CALL histdef(fileid, 'en_d', 'flx ent pan dt', 'kg m/s', iim, jj_nb, nhoriid, &
    128        llm, 1, llm, zvertiid,32, 'inst(X)', t_ops, t_wrt)
     127  CALL histdef(fileid, 'en_d', 'flx ent pan dt', 'kg m/s', nbp_lon, jj_nb, nhoriid, &
     128       nbp_lev, 1, nbp_lev, zvertiid,32, 'inst(X)', t_ops, t_wrt)
    129129! de_d
    130   CALL histdef(fileid, 'de_d', 'flx det pan dt', 'kg m/s', iim, jj_nb, nhoriid, &
    131        llm, 1, llm, zvertiid, 32, 'inst(X)', t_ops, t_wrt)
     130  CALL histdef(fileid, 'de_d', 'flx det pan dt', 'kg m/s', nbp_lon, jj_nb, nhoriid, &
     131       nbp_lev, 1, nbp_lev, zvertiid, 32, 'inst(X)', t_ops, t_wrt)
    132132! coefh
    133   CALL histdef(fileid, "coefh", " ", " ", iim, jj_nb, nhoriid, &
    134        llm, 1, llm, zvertiid,32, "inst(X)", t_ops, t_wrt)
     133  CALL histdef(fileid, "coefh", " ", " ", nbp_lon, jj_nb, nhoriid, &
     134       nbp_lev, 1, nbp_lev, zvertiid,32, "inst(X)", t_ops, t_wrt)
    135135! fm_th
    136   CALL histdef(fileid, "fm_th", " ", " ",iim, jj_nb, nhoriid, &
    137        llm, 1, llm, zvertiid,32, "inst(X)", t_ops, t_wrt)
     136  CALL histdef(fileid, "fm_th", " ", " ",nbp_lon, jj_nb, nhoriid, &
     137       nbp_lev, 1, nbp_lev, zvertiid,32, "inst(X)", t_ops, t_wrt)
    138138! en_th
    139   CALL histdef(fileid, "en_th", " ", " ",iim, jj_nb, nhoriid, &
    140        llm, 1, llm, zvertiid,32, "inst(X)", t_ops, t_wrt)
     139  CALL histdef(fileid, "en_th", " ", " ",nbp_lon, jj_nb, nhoriid, &
     140       nbp_lev, 1, nbp_lev, zvertiid,32, "inst(X)", t_ops, t_wrt)
    141141! frac_impa
    142   CALL histdef(fileid, 'frac_impa', ' ', ' ',iim, jj_nb, nhoriid, &
    143        llm, 1, llm, zvertiid,32, 'inst(X)', t_ops, t_wrt)
     142  CALL histdef(fileid, 'frac_impa', ' ', ' ',nbp_lon, jj_nb, nhoriid, &
     143       nbp_lev, 1, nbp_lev, zvertiid,32, 'inst(X)', t_ops, t_wrt)
    144144! frac_nucl
    145   CALL histdef(fileid, 'frac_nucl', ' ', ' ',iim, jj_nb, nhoriid, &
    146        llm, 1, llm, zvertiid,32, 'inst(X)', t_ops, t_wrt)
     145  CALL histdef(fileid, 'frac_nucl', ' ', ' ',nbp_lon, jj_nb, nhoriid, &
     146       nbp_lev, 1, nbp_lev, zvertiid,32, 'inst(X)', t_ops, t_wrt)
    147147! pyu1
    148   CALL histdef(fileid, "pyu1", " ", " ", iim,jj_nb,nhoriid, &
     148  CALL histdef(fileid, "pyu1", " ", " ", nbp_lon,jj_nb,nhoriid, &
    149149       1,1,1, -99, 32, "inst(X)", t_ops, t_wrt)
    150150! pyv1
    151   CALL histdef(fileid, "pyv1", " ", " ", iim,jj_nb,nhoriid, &
     151  CALL histdef(fileid, "pyv1", " ", " ", nbp_lon,jj_nb,nhoriid, &
    152152       1,1,1, -99, 32,"inst(X)", t_ops, t_wrt)   
    153153! ftsol1
    154   CALL histdef(fileid, "ftsol1", " ", " ",iim, jj_nb, nhoriid, &
     154  CALL histdef(fileid, "ftsol1", " ", " ",nbp_lon, jj_nb, nhoriid, &
    155155       1, 1,1, -99,32, "inst(X)", t_ops, t_wrt)
    156156! ftsol2
    157   CALL histdef(fileid, "ftsol2", " ", " ",iim, jj_nb, nhoriid, &
     157  CALL histdef(fileid, "ftsol2", " ", " ",nbp_lon, jj_nb, nhoriid, &
    158158       1, 1,1, -99,32, "inst(X)", t_ops, t_wrt)
    159159! ftsol3
    160   CALL histdef(fileid, "ftsol3", " ", " ", iim, jj_nb, nhoriid, &
     160  CALL histdef(fileid, "ftsol3", " ", " ", nbp_lon, jj_nb, nhoriid, &
    161161       1, 1,1, -99,32, "inst(X)", t_ops, t_wrt)
    162162! ftsol4
    163   CALL histdef(fileid, "ftsol4", " ", " ",iim, jj_nb, nhoriid, &
     163  CALL histdef(fileid, "ftsol4", " ", " ",nbp_lon, jj_nb, nhoriid, &
    164164       1, 1,1, -99, 32, "inst(X)", t_ops, t_wrt)
    165165! psrf1
    166   CALL histdef(fileid, "psrf1", " ", " ",iim, jj_nb, nhoriid, &
     166  CALL histdef(fileid, "psrf1", " ", " ",nbp_lon, jj_nb, nhoriid, &
    167167       1, 1, 1, -99,32, "inst(X)", t_ops, t_wrt)
    168168! psrf2
    169   CALL histdef(fileid, "psrf2", " ", " ",iim, jj_nb, nhoriid, &
     169  CALL histdef(fileid, "psrf2", " ", " ",nbp_lon, jj_nb, nhoriid, &
    170170       1, 1, 1, -99, 32, "inst(X)", t_ops, t_wrt)
    171171! psrf3
    172   CALL histdef(fileid, "psrf3", " ", " ",iim, jj_nb, nhoriid, &
     172  CALL histdef(fileid, "psrf3", " ", " ",nbp_lon, jj_nb, nhoriid, &
    173173       1, 1, 1, -99, 32, "inst(X)", t_ops, t_wrt)
    174174! psrf4
    175   CALL histdef(fileid, "psrf4", " ", " ", iim, jj_nb, nhoriid, &
     175  CALL histdef(fileid, "psrf4", " ", " ", nbp_lon, jj_nb, nhoriid, &
    176176       1, 1, 1, -99,32, "inst(X)", t_ops, t_wrt)
    177177! sh
    178   CALL histdef(fileid, 'sh', '', '', iim, jj_nb, nhoriid, &
    179        llm, 1, llm, zvertiid, 32, 'inst(X)', t_ops, t_wrt)
     178  CALL histdef(fileid, 'sh', '', '', nbp_lon, jj_nb, nhoriid, &
     179       nbp_lev, 1, nbp_lev, zvertiid, 32, 'inst(X)', t_ops, t_wrt)
    180180! da
    181   CALL histdef(fileid, 'da', '', '', iim, jj_nb, nhoriid, &
    182        llm, 1, llm, zvertiid, 32, 'inst(X)', t_ops, t_wrt)
     181  CALL histdef(fileid, 'da', '', '', nbp_lon, jj_nb, nhoriid, &
     182       nbp_lev, 1, nbp_lev, zvertiid, 32, 'inst(X)', t_ops, t_wrt)
    183183! mp
    184   CALL histdef(fileid, 'mp', '', '', iim, jj_nb, nhoriid, &
    185        llm, 1, llm, zvertiid, 32, 'inst(X)', t_ops, t_wrt)
     184  CALL histdef(fileid, 'mp', '', '', nbp_lon, jj_nb, nhoriid, &
     185       nbp_lev, 1, nbp_lev, zvertiid, 32, 'inst(X)', t_ops, t_wrt)
    186186! upwd
    187   CALL histdef(fileid, 'upwd', '', '', iim, jj_nb, nhoriid, &
    188        llm, 1, llm, zvertiid, 32, 'inst(X)', t_ops, t_wrt)
     187  CALL histdef(fileid, 'upwd', '', '', nbp_lon, jj_nb, nhoriid, &
     188       nbp_lev, 1, nbp_lev, zvertiid, 32, 'inst(X)', t_ops, t_wrt)
    189189! dnwd
    190   CALL histdef(fileid, 'dnwd', '', '', iim, jj_nb, nhoriid, &
    191        llm, 1, llm, zvertiid, 32, 'inst(X)', t_ops, t_wrt)
     190  CALL histdef(fileid, 'dnwd', '', '', nbp_lon, jj_nb, nhoriid, &
     191       nbp_lev, 1, nbp_lev, zvertiid, 32, 'inst(X)', t_ops, t_wrt)
    192192
    193193! phi
    194   DO k=1,llm
     194  DO k=1,nbp_lev
    195195     IF (k<10) THEN
    196196        WRITE(nvar,'(i1)') k
     
    202202     nvar='phi_lev'//trim(nvar)
    203203     
    204      CALL histdef(fileid, nvar, '', '', iim, jj_nb, nhoriid, &
    205           llm, 1, llm, zvertiid, 32, 'inst(X)', t_ops, t_wrt)
     204     CALL histdef(fileid, nvar, '', '', nbp_lon, jj_nb, nhoriid, &
     205          nbp_lev, 1, nbp_lev, zvertiid, 32, 'inst(X)', t_ops, t_wrt)
    206206  END DO
    207207
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/limit_slab.F90

    r3814 r3818  
    1212
    1313  INCLUDE "clesphys.h"
    14   INCLUDE "dimensions.h"
    1514
    1615! In- and ouput arguments
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/lsc_scav.F90

    r3814 r3818  
    2020!=====================================================================
    2121
    22   include "dimensions.h"
    2322  include "chem.h"
    2423  include "YOMCST.h"
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/moyglo_aire.F90

    r3809 r3818  
    1616  ! ==================================================================
    1717
    18   include "dimensions.h"
    19   ! ym#include "dimphy.h"
    2018  INTEGER i, nhori
    2119  REAL champ(klon), aire(klon), msk(klon)
     
    7472
    7573  ! ==================================================================
    76   include "dimensions.h"
    77   ! ym#include "dimphy.h"
    7874  include "YOMCST.h"
    7975  INTEGER i, k, nhori, nvert
     
    119115
    120116  ! ==================================================================
    121   include "dimensions.h"
    122   ! ym#include "dimphy.h"
    123117  include "YOMCST.h"
    124118  INTEGER i, k, nhori, nvert
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/pbl_surface_mod.F90

    r3817 r3818  
    263263  !  USE temps_phy_mod
    264264    USE inifis_mod, ONLY: annee_ref, day_ini, itau_phy, lunout, prt_level
     265    USE mod_grid_phy_lmdz, ONLY: nbp_lon, nbp_lat
    265266    IMPLICIT NONE
    266267
     
    271272    INCLUDE "clesphys.h"
    272273    INCLUDE "compbl.h"
    273     INCLUDE "dimensions.h"
    274274    INCLUDE "flux_arp.h"
    275275!****************************************************************************************
     
    732732
    733733! For debugging with IOIPSL
    734     INTEGER, DIMENSION(iim*(jjm+1))    :: ndexbg
     734    INTEGER, DIMENSION(nbp_lon*nbp_lat)    :: ndexbg
    735735    REAL                               :: zjulian
    736736    REAL, DIMENSION(klon)              :: tabindx
    737     REAL, DIMENSION(iim,jjm+1)         :: zx_lon, zx_lat
    738     REAL, DIMENSION(iim,jjm+1)         :: debugtab
     737    REAL, DIMENSION(nbp_lon,nbp_lat)         :: zx_lon, zx_lat
     738    REAL, DIMENSION(nbp_lon,nbp_lat)         :: debugtab
    739739
    740740
     
    793793          idayref = day_ini
    794794          CALL ymds2ju(annee_ref, 1, idayref, 0.0, zjulian)
    795           CALL gr_fi_ecrit(1,klon,iim,jjm+1,rlon,zx_lon)
    796           DO i = 1, iim
     795          CALL gr_fi_ecrit(1,klon,nbp_lon,nbp_lat,rlon,zx_lon)
     796          DO i = 1, nbp_lon
    797797             zx_lon(i,1) = rlon(i+1)
    798              zx_lon(i,jjm+1) = rlon(i+1)
     798             zx_lon(i,nbp_lat) = rlon(i+1)
    799799          ENDDO
    800           CALL gr_fi_ecrit(1,klon,iim,jjm+1,rlat,zx_lat)
    801           CALL histbeg("sous_index", iim,zx_lon(:,1),jjm+1,zx_lat(1,:), &
    802                1,iim,1,jjm+1, &
     800          CALL gr_fi_ecrit(1,klon,nbp_lon,nbp_lat,rlat,zx_lat)
     801          CALL histbeg("sous_index",nbp_lon,zx_lon(:,1),nbp_lat,zx_lat(1,:), &
     802               1,nbp_lon,1,nbp_lat, &
    803803               itau_phy,zjulian,dtime,nhoridbg,nidbg)
    804804          ! no vertical axis
     
    808808          cl_surf(4)='sic'
    809809          DO nsrf=1,nbsrf
    810              CALL histdef(nidbg, cl_surf(nsrf),cl_surf(nsrf), "-",iim, &
    811                   jjm+1,nhoridbg, 1, 1, 1, -99, 32, "inst", dtime,dtime)
     810             CALL histdef(nidbg, cl_surf(nsrf),cl_surf(nsrf), "-",nbp_lon, &
     811                  nbp_lat,nhoridbg, 1, 1, 1, -99, 32, "inst", dtime,dtime)
    812812          END DO
    813813
     
    11431143          ndexbg(:) = 0
    11441144          CALL gath2cpl(tabindx,debugtab,knon,ni)
    1145           CALL histwrite(nidbg,cl_surf(nsrf),itap,debugtab,iim*(jjm+1), ndexbg)
     1145          CALL histwrite(nidbg,cl_surf(nsrf),itap,debugtab,nbp_lon*nbp_lat, ndexbg)
    11461146       ENDIF
    11471147       
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/phyaqua_mod.F90

    r3816 r3818  
    3535    IMPLICIT NONE
    3636
    37     include "dimensions.h"
    3837    ! #include "dimphy.h"
    3938    ! #include "YOMCST.h"
     
    496495    USE mod_phys_lmdz_transfert_para, ONLY: gather
    497496    IMPLICIT NONE
    498     ! #include "dimensions.h"
    499     ! #include "dimphy.h"
     497
    500498    include "netcdf.inc"
    501499
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/phyetat0.F90

    r3817 r3818  
    3434  ! Objet: Lecture de l'etat initial pour la physique
    3535  !======================================================================
    36   include "dimensions.h"
    3736  include "netcdf.inc"
    3837  include "dimsoil.h"
     
    7675  ! FH1D
    7776  !     real iolat(jjm+1)
    78   real iolat(jjm+1-1/(iim*jjm))
     77  !real iolat(jjm+1-1/(iim*jjm))
    7978
    8079  ! Ouvrir le fichier contenant l'etat initial:
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/physiq.F90

    r3817 r3818  
    5151                        annee_ref, day_ref, itau_phy, jD_ref, start_time, &
    5252                        prt_level, lunout
     53  USE mod_grid_phy_lmdz, ONLY: nbp_lon, nbp_lat, nbp_lev
    5354#ifdef REPROBUS
    5455  USE CHEM_REP, ONLY : Init_chem_rep_xjour
     
    109110  !! d_ps----output-R-tendance physique de la pression au sol
    110111  !!======================================================================
    111   include "dimensions.h"
     112!  include "dimensions.h"
    112113  integer jjmp1
    113   parameter (jjmp1=jjm+1-1/jjm)
    114   integer iip1
    115   parameter (iip1=iim+1)
     114!  parameter (jjmp1=jjm+1-1/jjm) ! => (jjmp1=nbp_lat-1/(nbp_lat-1))
     115!  integer iip1
     116!  parameter (iip1=iim+1) ! => (iip1=nbp_lon+1)
    116117
    117118  include "regdim.h"
     
    485486  SAVE lmt_pas                ! frequence de mise a jour
    486487  !$OMP THREADPRIVATE(lmt_pas)
    487   real zmasse(klon, llm),exner(klon, llm)
     488  real zmasse(klon, nbp_lev),exner(klon, nbp_lev)
    488489  !     (column-density of mass of air in a cell, in kg m-2)
    489490  real, parameter:: dobson_u = 2.1415e-05 ! Dobson unit, in kg m-2
     
    664665  REAL tabcntr0( length       )
    665666  !
    666   INTEGER ndex2d(iim*jjmp1)
     667  INTEGER ndex2d(nbp_lon*(nbp_lat-1/(nbp_lat-1)))
    667668  !IM
    668669  !
     
    677678  !IM 141004 END
    678679  !IM 190504 BEG
    679   INTEGER ij, imp1jmp1
    680   PARAMETER(imp1jmp1=(iim+1)*jjmp1)
     680  INTEGER ij
     681!  INTEGER imp1jmp1
     682!  PARAMETER(imp1jmp1=(iim+1)*jjmp1) ! => (imp1jmp1=(nbp_lon+1)*(nbp_lat-1/(nbp_lat-1)))
    681683  !ym A voir plus tard
    682   REAL zx_tmp(imp1jmp1), airedyn(iim+1,jjmp1)
    683   REAL padyn(iim+1,jjmp1,klev+1)
    684   REAL dudyn(iim+1,jjmp1,klev)
    685   REAL rlatdyn(iim+1,jjmp1)
     684  REAL zx_tmp((nbp_lon+1)*(nbp_lat-1/(nbp_lat-1)))
     685  REAL airedyn(nbp_lon+1,nbp_lat-1/(nbp_lat-1))
     686  REAL padyn(nbp_lon+1,nbp_lat-1/(nbp_lat-1),klev+1)
     687  REAL dudyn(nbp_lon+1,nbp_lat-1/(nbp_lat-1),klev)
     688  REAL rlatdyn(nbp_lon+1,nbp_lat-1/(nbp_lat-1))
    686689  !IM 190504 END
    687690  LOGICAL ok_msk
     
    695698  REAL zx_tmp_fi2d(klon)      ! variable temporaire grille physique
    696699  REAL zx_tmp_fi3d(klon,klev) ! variable temporaire pour champs 3D
    697   REAL zx_tmp_2d(iim,jjmp1)
    698   REAL zx_lon(iim,jjmp1), zx_lat(iim,jjmp1)
     700  REAL zx_tmp_2d(nbp_lon,nbp_lat-1/(nbp_lat-1))
     701  REAL zx_lon(nbp_lon,nbp_lat-1/(nbp_lat-1))
     702  REAL zx_lat(nbp_lon,nbp_lat-1/(nbp_lat-1))
    699703  !
    700704  INTEGER nid_day_seri, nid_ctesGCM
     
    871875!albedo SB <<<
    872876
     877  ! Ehouarn: set value of jjmp1 since it is no longer a "fixed parameter"
     878  jjmp1=nbp_lat-1/(nbp_lat-1) ! -1/(nbp_lat-1) to handle 1D case
     879 
    873880  !======================================================================
    874881  ! Gestion calendrier : mise a jour du module phys_cal_mod
     
    960967
    961968  torsfc=0.
    962   forall (k=1: llm) zmasse(:, k) = (paprs(:, k)-paprs(:, k+1)) / rg
     969  forall (k=1: nbp_lev) zmasse(:, k) = (paprs(:, k)-paprs(:, k+1)) / rg
    963970
    964971
     
    17921799
    17931800  if (mydebug) then
    1794      call writefield_phy('u_seri',u_seri,llm)
    1795      call writefield_phy('v_seri',v_seri,llm)
    1796      call writefield_phy('t_seri',t_seri,llm)
    1797      call writefield_phy('q_seri',q_seri,llm)
     1801     call writefield_phy('u_seri',u_seri,nbp_lev)
     1802     call writefield_phy('v_seri',v_seri,nbp_lev)
     1803     call writefield_phy('t_seri',t_seri,nbp_lev)
     1804     call writefield_phy('q_seri',q_seri,nbp_lev)
    17981805  endif
    17991806
     
    19241931
    19251932     if (mydebug) then
    1926         call writefield_phy('u_seri',u_seri,llm)
    1927         call writefield_phy('v_seri',v_seri,llm)
    1928         call writefield_phy('t_seri',t_seri,llm)
    1929         call writefield_phy('q_seri',q_seri,llm)
     1933        call writefield_phy('u_seri',u_seri,nbp_lev)
     1934        call writefield_phy('v_seri',v_seri,nbp_lev)
     1935        call writefield_phy('t_seri',t_seri,nbp_lev)
     1936        call writefield_phy('q_seri',q_seri,nbp_lev)
    19301937     endif
    19311938
     
    23622369
    23632370  if (mydebug) then
    2364      call writefield_phy('u_seri',u_seri,llm)
    2365      call writefield_phy('v_seri',v_seri,llm)
    2366      call writefield_phy('t_seri',t_seri,llm)
    2367      call writefield_phy('q_seri',q_seri,llm)
     2371     call writefield_phy('u_seri',u_seri,nbp_lev)
     2372     call writefield_phy('v_seri',v_seri,nbp_lev)
     2373     call writefield_phy('t_seri',t_seri,nbp_lev)
     2374     call writefield_phy('q_seri',q_seri,nbp_lev)
    23682375  endif
    23692376
     
    29312938
    29322939  if (mydebug) then
    2933      call writefield_phy('u_seri',u_seri,llm)
    2934      call writefield_phy('v_seri',v_seri,llm)
    2935      call writefield_phy('t_seri',t_seri,llm)
    2936      call writefield_phy('q_seri',q_seri,llm)
     2940     call writefield_phy('u_seri',u_seri,nbp_lev)
     2941     call writefield_phy('v_seri',v_seri,nbp_lev)
     2942     call writefield_phy('t_seri',t_seri,nbp_lev)
     2943     call writefield_phy('q_seri',q_seri,nbp_lev)
    29372944  endif
    29382945
     
    33913398
    33923399     if (mydebug) then
    3393         call writefield_phy('u_seri',u_seri,llm)
    3394         call writefield_phy('v_seri',v_seri,llm)
    3395         call writefield_phy('t_seri',t_seri,llm)
    3396         call writefield_phy('q_seri',q_seri,llm)
     3400        call writefield_phy('u_seri',u_seri,nbp_lev)
     3401        call writefield_phy('v_seri',v_seri,nbp_lev)
     3402        call writefield_phy('t_seri',t_seri,nbp_lev)
     3403        call writefield_phy('q_seri',q_seri,nbp_lev)
    33973404     endif
    33983405
     
    35673574  !
    35683575  if (mydebug) then
    3569      call writefield_phy('u_seri',u_seri,llm)
    3570      call writefield_phy('v_seri',v_seri,llm)
    3571      call writefield_phy('t_seri',t_seri,llm)
    3572      call writefield_phy('q_seri',q_seri,llm)
     3576     call writefield_phy('u_seri',u_seri,nbp_lev)
     3577     call writefield_phy('v_seri',v_seri,nbp_lev)
     3578     call writefield_phy('t_seri',t_seri,nbp_lev)
     3579     call writefield_phy('q_seri',q_seri,nbp_lev)
    35733580  endif
    35743581
     
    36523659  !
    36533660  if (mydebug) then
    3654      call writefield_phy('u_seri',u_seri,llm)
    3655      call writefield_phy('v_seri',v_seri,llm)
    3656      call writefield_phy('t_seri',t_seri,llm)
    3657      call writefield_phy('q_seri',q_seri,llm)
     3661     call writefield_phy('u_seri',u_seri,nbp_lev)
     3662     call writefield_phy('v_seri',v_seri,nbp_lev)
     3663     call writefield_phy('t_seri',t_seri,nbp_lev)
     3664     call writefield_phy('q_seri',q_seri,nbp_lev)
    36583665  endif
    36593666
     
    37213728
    37223729  if (mydebug) then
    3723      call writefield_phy('u_seri',u_seri,llm)
    3724      call writefield_phy('v_seri',v_seri,llm)
    3725      call writefield_phy('t_seri',t_seri,llm)
    3726      call writefield_phy('q_seri',q_seri,llm)
     3730     call writefield_phy('u_seri',u_seri,nbp_lev)
     3731     call writefield_phy('v_seri',v_seri,nbp_lev)
     3732     call writefield_phy('t_seri',t_seri,nbp_lev)
     3733     call writefield_phy('q_seri',q_seri,nbp_lev)
    37273734  endif
    37283735
     
    38933900
    38943901  d_t_ec(:,:)=0.
    3895   forall (k=1: llm) exner(:, k) = (pplay(:, k)/paprs(:,1))**RKAPPA
     3902  forall (k=1: nbp_lev) exner(:, k) = (pplay(:, k)/paprs(:,1))**RKAPPA
    38963903  CALL ener_conserv(klon,klev,pdtphys,u,v,t,qx(:,:,ivap), &
    38973904       u_seri,v_seri,t_seri,q_seri,pbl_tke(:,:,is_ave)-tke0(:,:), &
     
    39773984  !
    39783985  if (mydebug) then
    3979      call writefield_phy('u_seri',u_seri,llm)
    3980      call writefield_phy('v_seri',v_seri,llm)
    3981      call writefield_phy('t_seri',t_seri,llm)
    3982      call writefield_phy('q_seri',q_seri,llm)
     3986     call writefield_phy('u_seri',u_seri,nbp_lev)
     3987     call writefield_phy('v_seri',v_seri,nbp_lev)
     3988     call writefield_phy('t_seri',t_seri,nbp_lev)
     3989     call writefield_phy('q_seri',q_seri,nbp_lev)
    39833990  endif
    39843991
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/phystokenc.F90

    r3817 r3818  
    2222!
    2323!======================================================================
    24   INCLUDE "dimensions.h"
    2524!  INCLUDE "tracstoke.h"
    2625!======================================================================
     
    6261!
    6362  REAL rlon(klon), rlat(klon), dtime
    64   REAL zx_tmp_3d(iim,jjm+1,klev),zx_tmp_2d(iim,jjm+1)
    6563
    6664!   Couche limite:
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/phytrac_mod.F90

    r3817 r3818  
    106106
    107107    INCLUDE "YOMCST.h"
    108     INCLUDE "dimensions.h"
    109108    INCLUDE "clesphys.h"
    110109    INCLUDE "thermcell.h"
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/surf_land_orchidee_mod.F90

    r3817 r3818  
    4646    USE indice_sol_mod
    4747    USE inifis_mod, ONLY: lunout
     48    USE mod_grid_phy_lmdz, ONLY: nbp_lon, nbp_lat
    4849
    4950!   
     
    100101!
    101102    INCLUDE "YOMCST.h"
    102     INCLUDE "dimensions.h"
    103103 
    104104!
     
    229229       DO igrid = 2, klon - 1
    230230          indi = indi + 1
    231           IF ( indi > iim) THEN
     231          IF ( indi > nbp_lon) THEN
    232232             indi = 1
    233233             indj = indj + 1
     
    237237       ENDDO
    238238       ig(klon) = 1
    239        jg(klon) = jjm + 1
     239       jg(klon) = nbp_lat
    240240
    241241       IF ((.NOT. ALLOCATED(lalo))) THEN
     
    247247       ENDIF
    248248       IF ((.NOT. ALLOCATED(lon_scat))) THEN
    249           ALLOCATE(lon_scat(iim,jjm+1), stat = error)
     249          ALLOCATE(lon_scat(nbp_lon,nbp_lat), stat = error)
    250250          IF (error /= 0) THEN
    251251             abort_message='Pb allocation lon_scat'
     
    254254       ENDIF
    255255       IF ((.NOT. ALLOCATED(lat_scat))) THEN
    256           ALLOCATE(lat_scat(iim,jjm+1), stat = error)
     256          ALLOCATE(lat_scat(nbp_lon,nbp_lat), stat = error)
    257257          IF (error /= 0) THEN
    258258             abort_message='Pb allocation lat_scat'
     
    275275       IF (is_mpi_root) THEN
    276276          index = 1
    277           DO jj = 2, jjm
    278              DO ij = 1, iim
     277          DO jj = 2, nbp_lat-1
     278             DO ij = 1, nbp_lon
    279279                index = index + 1
    280280                lon_scat(ij,jj) = rlon_g(index)
     
    284284          lon_scat(:,1) = lon_scat(:,2)
    285285          lat_scat(:,1) = rlat_g(1)
    286           lon_scat(:,jjm+1) = lon_scat(:,2)
    287           lat_scat(:,jjm+1) = rlat_g(klon_glo)
     286          lon_scat(:,nbp_lat) = lon_scat(:,2)
     287          lat_scat(:,nbp_lat) = rlat_g(klon_glo)
    288288       ENDIF
    289289   
     
    395395
    396396#ifdef CPP_VEGET
    397           CALL intersurf_main (itime+itau_phy-1, iim, jjm+1, knon, ktindex, dtime, &
     397          CALL intersurf_main (itime+itau_phy-1,nbp_lon,nbp_lat, knon, ktindex, dtime, &
    398398               lrestart_read, lrestart_write, lalo, &
    399399               contfrac, neighbours, resolution, date0, &
     
    419419    IF (knon > 0) THEN
    420420#ifdef CPP_VEGET   
    421        CALL intersurf_main (itime+itau_phy, iim, jjm+1, knon, ktindex, dtime,  &
     421       CALL intersurf_main (itime+itau_phy,nbp_lon,nbp_lat, knon, ktindex, dtime,  &
    422422            lrestart_read, lrestart_write, lalo, &
    423423            contfrac, neighbours, resolution, date0, &
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/surf_land_orchidee_noopenmp_mod.F90

    r3817 r3818  
    9898    USE carbon_cycle_mod, ONLY : carbon_cycle_cpl, fco2_land_inst, fco2_lu_inst
    9999    USE indice_sol_mod
     100!    USE mod_grid_phy_lmdz, ONLY: nbp_lon, nbp_lat
    100101    IMPLICIT NONE
    101102
    102     INCLUDE "temps.h"
    103103    INCLUDE "YOMCST.h"
    104     INCLUDE "dimensions.h"
    105104 
    106105!
     
    231230       DO igrid = 2, klon - 1
    232231          indi = indi + 1
    233           IF ( indi > iim) THEN
     232          IF ( indi > nbp_lon) THEN
    234233             indi = 1
    235234             indj = indj + 1
     
    239238       ENDDO
    240239       ig(klon) = 1
    241        jg(klon) = jjm + 1
     240       jg(klon) = nbp_lat
    242241
    243242       IF ((.NOT. ALLOCATED(lalo))) THEN
     
    249248       ENDIF
    250249       IF ((.NOT. ALLOCATED(lon_scat))) THEN
    251           ALLOCATE(lon_scat(iim,jjm+1), stat = error)
     250          ALLOCATE(lon_scat(nbp_lon,nbp_lat), stat = error)
    252251          IF (error /= 0) THEN
    253252             abort_message='Pb allocation lon_scat'
     
    256255       ENDIF
    257256       IF ((.NOT. ALLOCATED(lat_scat))) THEN
    258           ALLOCATE(lat_scat(iim,jjm+1), stat = error)
     257          ALLOCATE(lat_scat(nbp_lon,nbp_lat), stat = error)
    259258          IF (error /= 0) THEN
    260259             abort_message='Pb allocation lat_scat'
     
    277276       IF (is_mpi_root) THEN
    278277          index = 1
    279           DO jj = 2, jjm
    280              DO ij = 1, iim
     278          DO jj = 2, nbp_lat -1
     279             DO ij = 1, nbp_lon
    281280                index = index + 1
    282281                lon_scat(ij,jj) = rlon_g(index)
     
    286285          lon_scat(:,1) = lon_scat(:,2)
    287286          lat_scat(:,1) = rlat_g(1)
    288           lon_scat(:,jjm+1) = lon_scat(:,2)
    289           lat_scat(:,jjm+1) = rlat_g(klon_glo)
     287          lon_scat(:,nbp_lat) = lon_scat(:,2)
     288          lat_scat(:,nbp_lat) = rlat_g(klon_glo)
    290289       ENDIF
    291290
     
    398397!  if (pole_nord) then
    399398!    offset=0
    400 !    ktindex(:)=ktindex(:)+iim-1
     399!    ktindex(:)=ktindex(:)+nbp_lon-1
    401400!  else
    402 !    offset = klon_mpi_begin-1+iim-1
    403 !    ktindex(:)=ktindex(:)+MOD(offset,iim)
    404 !    offset=offset-MOD(offset,iim)
     401!    offset = klon_mpi_begin-1+nbp_lon-1
     402!    ktindex(:)=ktindex(:)+MOD(offset,nbp_lon)
     403!    offset=offset-MOD(offset,nbp_lon)
    405404!  endif
    406405 
     
    412411#ifndef CPP_MPI
    413412          ! Interface for ORCHIDEE compiled in sequential mode(without preprocessing flag CPP_MPI)
    414           CALL intersurf_main (itime+itau_phy-1, iim, jjm+1, knon, ktindex, dtime, &
     413          CALL intersurf_main (itime+itau_phy-1,nbp_lon,nbp_lat, knon, ktindex, dtime, &
    415414               lrestart_read, lrestart_write, lalo, &
    416415               contfrac, neighbours, resolution, date0, &
     
    429428#else         
    430429          ! Interface for ORCHIDEE version 1.9 or later(1.9.2, 1.9.3, 1.9.4, 1.9.5) compiled in parallel mode(with preprocessing flag CPP_MPI)
    431           CALL intersurf_main (itime+itau_phy-1, iim, jjm+1, offset, knon, ktindex, &
     430          CALL intersurf_main (itime+itau_phy-1,nbp_lon,nbp_lat, offset, knon, ktindex, &
    432431               orch_comm, dtime, lrestart_read, lrestart_write, lalo, &
    433432               contfrac, neighbours, resolution, date0, &
     
    457456#ifndef CPP_MPI
    458457       ! Interface for ORCHIDEE compiled in sequential mode(without preprocessing flag CPP_MPI)
    459        CALL intersurf_main (itime+itau_phy, iim, jjm+1, knon, ktindex, dtime, &
     458       CALL intersurf_main (itime+itau_phy,nbp_lon,nbp_lat, knon, ktindex, dtime, &
    460459            lrestart_read, lrestart_write, lalo, &
    461460            contfrac, neighbours, resolution, date0, &
     
    473472#else
    474473       ! Interface for ORCHIDEE version 1.9 or later compiled in parallel mode(with preprocessing flag CPP_MPI)
    475        CALL intersurf_main (itime+itau_phy, iim, jjm+1,offset, knon, ktindex, &
     474       CALL intersurf_main (itime+itau_phy,nbp_lon,nbp_lat,offset, knon, ktindex, &
    476475            orch_comm,dtime, lrestart_read, lrestart_write, lalo, &
    477476            contfrac, neighbours, resolution, date0, &
     
    529528  SUBROUTINE Init_orchidee_index(knon,orch_comm,knindex,offset,ktindex)
    530529   
    531     INCLUDE "dimensions.h"
     530    USE mod_grid_phy_lmdz, ONLY:
     531    IMPLICIT NONE
    532532
    533533#ifdef CPP_MPI
     
    562562!****************************************************************************************
    563563
    564     MyLastPoint=klon_mpi_begin-1+knindex(knon)+iim-1
     564    MyLastPoint=klon_mpi_begin-1+knindex(knon)+nbp_lon-1
    565565   
    566566    IF (is_parallel) THEN
     
    591591       offset=0
    592592    ELSE
    593        offset=LastPoint-MOD(LastPoint,iim)
    594     ENDIF
    595    
    596     ktindex(1:knon)=knindex(1:knon)+(klon_mpi_begin+iim-1)-offset-1     
     593       offset=LastPoint-MOD(LastPoint,nbp_lon)
     594    ENDIF
     595   
     596    ktindex(1:knon)=knindex(1:knon)+(klon_mpi_begin+nbp_lon-1)-offset-1
    597597   
    598598
     
    602602!
    603603  SUBROUTINE Get_orchidee_communicator(knon,orch_comm)
    604    
     604    IMPLICIT NONE
    605605#ifdef CPP_MPI
    606606    INCLUDE 'mpif.h'
     
    634634   
    635635    USE indice_sol_mod
    636 
    637     INCLUDE "dimensions.h"
     636    USE mod_grid_phy_lmdz, ONLY: nbp_lon
     637    IMPLICIT NONE
     638
    638639#ifdef CPP_MPI
    639640    INCLUDE 'mpif.h'
     
    661662    INTEGER, DIMENSION(8)                :: offset 
    662663    INTEGER, DIMENSION(knon)             :: ktindex_p
    663     INTEGER, DIMENSION(iim,jjm+1)        :: correspond
     664    INTEGER, DIMENSION(nbp_lon,jjm+1)        :: correspond
    664665    INTEGER, ALLOCATABLE, DIMENSION(:)   :: ktindex_g
    665666    INTEGER, ALLOCATABLE, DIMENSION(:,:) :: neighbours_g
     
    694695   ENDIF
    695696   
    696     ktindex_p(1:knon)=ktindex(1:knon)+klon_mpi_begin-1+iim-1
     697    ktindex_p(1:knon)=ktindex(1:knon)+klon_mpi_begin-1+nbp_lon-1
    697698   
    698699    IF (is_sequential) THEN
     
    713714!
    714715! offset bord ouest
    715        off_ini(1,1) = - iim  ; off_ini(2,1) = - iim + 1; off_ini(3,1) = 1
    716        off_ini(4,1) = iim + 1; off_ini(5,1) = iim      ; off_ini(6,1) = 2 * iim - 1
    717        off_ini(7,1) = iim -1 ; off_ini(8,1) = - 1
     716       off_ini(1,1) = - nbp_lon  ; off_ini(2,1) = - nbp_lon + 1; off_ini(3,1) = 1
     717       off_ini(4,1) = nbp_lon + 1; off_ini(5,1) = nbp_lon      ; off_ini(6,1) = 2 * nbp_lon - 1
     718       off_ini(7,1) = nbp_lon -1 ; off_ini(8,1) = - 1
    718719! offset point normal
    719        off_ini(1,2) = - iim  ; off_ini(2,2) = - iim + 1; off_ini(3,2) = 1
    720        off_ini(4,2) = iim + 1; off_ini(5,2) = iim      ; off_ini(6,2) = iim - 1
    721        off_ini(7,2) = -1     ; off_ini(8,2) = - iim - 1
     720       off_ini(1,2) = - nbp_lon  ; off_ini(2,2) = - nbp_lon + 1; off_ini(3,2) = 1
     721       off_ini(4,2) = nbp_lon + 1; off_ini(5,2) = nbp_lon      ; off_ini(6,2) = nbp_lon - 1
     722       off_ini(7,2) = -1     ; off_ini(8,2) = - nbp_lon - 1
    722723! offset bord   est
    723        off_ini(1,3) = - iim; off_ini(2,3) = - 2 * iim + 1; off_ini(3,3) = - iim + 1
    724        off_ini(4,3) =  1   ; off_ini(5,3) = iim          ; off_ini(6,3) = iim - 1
    725        off_ini(7,3) = -1   ; off_ini(8,3) = - iim - 1
     724       off_ini(1,3) = - nbp_lon; off_ini(2,3) = - 2 * nbp_lon + 1; off_ini(3,3) = - nbp_lon + 1
     725       off_ini(4,3) =  1   ; off_ini(5,3) = nbp_lon          ; off_ini(6,3) = nbp_lon - 1
     726       off_ini(7,3) = -1   ; off_ini(8,3) = - nbp_lon - 1
    726727!
    727728!
     
    730731       DO igrid = 1, knon_g
    731732          index = ktindex_g(igrid)
    732           jj = INT((index - 1)/iim) + 1
    733           ij = index - (jj - 1) * iim
     733          jj = INT((index - 1)/nbp_lon) + 1
     734          ij = index - (jj - 1) * nbp_lon
    734735          correspond(ij,jj) = igrid
    735736       ENDDO
     
    737738       DO igrid = 1, knon_g
    738739          iglob = ktindex_g(igrid)
    739           IF (MOD(iglob, iim) == 1) THEN
     740          IF (MOD(iglob, nbp_lon) == 1) THEN
    740741             offset = off_ini(:,1)
    741           ELSE IF(MOD(iglob, iim) == 0) THEN
     742          ELSE IF(MOD(iglob, nbp_lon) == 0) THEN
    742743             offset = off_ini(:,3)
    743744          ELSE
     
    746747          DO i = 1, 8
    747748             index = iglob + offset(i)
    748              ireal = (MIN(MAX(1, index - iim + 1), klon_glo))
     749             ireal = (MIN(MAX(1, index - nbp_lon + 1), klon_glo))
    749750             IF (pctsrf_g(ireal) > EPSFRA) THEN
    750                 jj = INT((index - 1)/iim) + 1
    751                 ij = index - (jj - 1) * iim
     751                jj = INT((index - 1)/nbp_lon) + 1
     752                ij = index - (jj - 1) * nbp_lon
    752753                neighbours_g(igrid, i) = correspond(ij, jj)
    753754             ENDIF
     
    779780
    780781#endif
     782! of #ifdef ORCHIDEE_NOOPENMP
    781783END MODULE surf_land_orchidee_noopenmp_mod
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/thermcell.F90

    r3814 r3818  
    3434  ! -------------
    3535
    36   include "dimensions.h"
    3736  ! ccc#include "dimphy.h"
    3837  include "YOMCST.h"
     
    998997  IMPLICIT NONE
    999998
    1000   include "dimensions.h"
    1001999  ! ccc#include "dimphy.h"
    10021000  include "YOMCST.h"
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/thermcellV0_main.F90

    r3817 r3818  
    4242!   -------------
    4343
    44       include "dimensions.h"
    4544      include "YOMCST.h"
    4645      include "YOETHF.h"
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/thermcell_main.F90

    r3817 r3818  
    6363!   -------------
    6464
    65 #include "dimensions.h"
    6665#include "YOMCST.h"
    6766#include "YOETHF.h"
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/thermcell_old.F90

    r3814 r3818  
    3131  ! -------------
    3232
    33   include "dimensions.h"
    3433  include "YOMCST.h"
    3534
     
    742741  ! -------------
    743742
    744   include "dimensions.h"
    745743  ! ccc#include "dimphy.h"
    746744  include "YOMCST.h"
     
    23452343  ! -------------
    23462344
    2347   include "dimensions.h"
    23482345  ! ccc#include "dimphy.h"
    23492346  include "YOMCST.h"
     
    32783275  ! -------------
    32793276
    3280   include "dimensions.h"
    32813277  ! ccc#include "dimphy.h"
    32823278  include "YOMCST.h"
     
    41394135  ! =======================================================================
    41404136
    4141   include "dimensions.h"
    4142   ! ccc#include "dimphy.h"
    4143 
    41444137  INTEGER ngrid, nlay
    41454138
     
    42354228
    42364229  ! =======================================================================
    4237 
    4238   include "dimensions.h"
    4239   ! ccc#include "dimphy.h"
    42404230
    42414231  INTEGER ngrid, nlay
     
    43424332  ! =======================================================================
    43434333
    4344   include "dimensions.h"
    4345   ! ccc#include "dimphy.h"
    4346 
    43474334  INTEGER ngrid, nlay
    43484335
     
    44194406
    44204407  ! =======================================================================
    4421 
    4422   include "dimensions.h"
    4423   ! ccc#include "dimphy.h"
    44244408
    44254409  INTEGER ngrid, nlay
     
    45614545  ! -------------
    45624546
    4563   include "dimensions.h"
    4564   ! ccc#include "dimphy.h"
    45654547  include "YOMCST.h"
    45664548
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/tracinca_mod.F90

    r3816 r3818  
    5252    IMPLICIT NONE
    5353   
    54     INCLUDE "dimensions.h"
    55 !    INCLUDE "paramet.h"
    5654
    5755!==========================================================================
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/transp.F90

    r3809 r3818  
    1313  ! ======================================================================
    1414
    15   ! ym#include "dimensions.h"
    16   ! ym#include "dimphy.h"
    1715  include "YOMCST.h"
    1816
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/transp_lay.F90

    r3809 r3818  
    1313  ! ======================================================================
    1414
    15   ! ym#include "dimensions.h"
    16   ! ym#include "dimphy.h"
    1715  include "YOMCST.h"
    1816
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/undefSTD.F90

    r3809 r3818  
    2828  ! ====================================================================
    2929
    30   ! ym#include "dimensions.h"
    3130  ! ym      integer jjmp1
    3231  ! ym      parameter (jjmp1=jjm+1-1/jjm)
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/ustarhb.F90

    r3809 r3818  
    1818  ! model. J. of Climate, vol. 6, 1825-1842.
    1919  ! ======================================================================
    20   ! ym#include "dimensions.h"
    21   ! ym#include "dimphy.h"
    2220  include "YOMCST.h"
    2321
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/vdif_kcay.F90

    r3809 r3818  
    66  USE dimphy
    77  IMPLICIT NONE
    8   ! .......................................................................
    9   ! ym#include "dimensions.h"
    10   ! ym#include "dimphy.h"
    11   ! .......................................................................
    128
    139  ! dt : pas de temps
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/wake.F90

    r3817 r3818  
    111111  ! -------------------------------------------------------------------------
    112112
    113   include "dimensions.h"
    114113  include "YOMCST.h"
    115114  include "cvthermo.h"
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/write_histday_seri.h

    r3814 r3818  
    2424      zx_tmp_fi2d(1:klon)=moyglo
    2525!
    26       CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
     26      CALL gr_fi_ecrit(1, klon,nbp_lon,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
    2727      CALL histwrite(nid_day_seri,"bilTOA",itau_w, &
    28                      zx_tmp_2d,iim*jjmp1,ndex2d)
     28                     zx_tmp_2d,nbp_lon*jjmp1,ndex2d)
    2929!
    3030      ok_msk=.FALSE.
     
    3333      zx_tmp_fi2d(1:klon)=moyglo
    3434!
    35       CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
     35      CALL gr_fi_ecrit(1, klon,nbp_lon,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
    3636      CALL histwrite(nid_day_seri,"bils",itau_w, &
    37                      zx_tmp_2d,iim*jjmp1,ndex2d)
     37                     zx_tmp_2d,nbp_lon*jjmp1,ndex2d)
    3838!
    3939      DO k=1, klev
     
    4848      zx_tmp_fi2d(1:klon)=moyglo
    4949!
    50       CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
     50      CALL gr_fi_ecrit(1, klon,nbp_lon,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
    5151      CALL histwrite(nid_day_seri,"ecin",itau_w, &
    52                      zx_tmp_2d,iim*jjmp1,ndex2d)
     52                     zx_tmp_2d,nbp_lon*jjmp1,ndex2d)
    5353
    5454
     
    6868!ym      zx_tmp_fi2d(1:klon)=moyglo
    6969!ym!
    70 !ym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
     70!ym      CALL gr_fi_ecrit(1, klon,nbp_lon,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
    7171!ym      CALL histwrite(nid_day_seri,"momang",itau_w,zx_tmp_2d, &
    72 !ym                     iim*jjmp1,ndex2d)
     72!ym                     nbp_lon*jjmp1,ndex2d)
    7373!ym!
    7474!ym! friction torque
     
    8383!ym      zx_tmp_fi2d(1:klon)=moyglo
    8484!ym!
    85 !ym      CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
     85!ym      CALL gr_fi_ecrit(1, klon,nbp_lon,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
    8686!ym      CALL histwrite(nid_day_seri,"frictor",itau_w,zx_tmp_2d, &
    87 !ym                     iim*jjmp1,ndex2d)
     87!ym                     nbp_lon*jjmp1,ndex2d)
    8888!ym!
    8989!ym! mountain torque
    9090!ym!
    9191!ym!IM 190504 BEG
    92 !ym      CALL gr_fi_dyn(1,klon,iim+1,jjm+1,airephy,airedyn)
    93 !ym      CALL gr_fi_dyn(klev+1,klon,iim+1,jjm+1,paprs,padyn)
    94 !ym      CALL gr_fi_dyn(1,klon,iim+1,jjm+1,rlat,rlatdyn)
     92!ym      CALL gr_fi_dyn(1,klon,nbp_lon+1,jjm+1,airephy,airedyn)
     93!ym      CALL gr_fi_dyn(klev+1,klon,nbp_lon+1,jjm+1,paprs,padyn)
     94!ym      CALL gr_fi_dyn(1,klon,nbp_lon+1,jjm+1,rlat,rlatdyn)
    9595!ym     
    9696!ym
     
    9898!ym      airetot=0.
    9999!ym      DO j = 1, jjmp1
    100 !ym       DO i = 1, iim+1
    101 !ym        ij=i+(iim+1)*(j-1)
     100!ym       DO i = 1, nbp_lon+1
     101!ym        ij=i+(nbp_lon+1)*(j-1)
    102102!ym        zx_tmp(ij)=0.
    103103!ym        DO k = 1, klev
     
    118118!ym!
    119119!ym!IM 190504 END
    120 !ym      zx_tmp_2d(1:iim,1:jjmp1)=mountor
     120!ym      zx_tmp_2d(1:nbp_lon,1:jjmp1)=mountor
    121121!ym      CALL histwrite(nid_day_seri,"mountor",itau_w,zx_tmp_2d, &
    122 !ym                     iim*jjmp1,ndex2d)
     122!ym                     nbp_lon*jjmp1,ndex2d)
    123123!ym!
    124124!ym      ENDIF !(1.EQ.0) THEN
     
    126126!ym!
    127127!ym
    128 !ym      CALL gr_fi_dyn(1,klon,iim+1,jjm+1,airephy,airedyn)
     128!ym      CALL gr_fi_dyn(1,klon,nbp_lon+1,jjm+1,airephy,airedyn)
    129129!#endif     
    130130     
    131       CALL gr_fi_ecrit(1,klon,iim,jjmp1,airephy,zx_tmp_2d)
     131      CALL gr_fi_ecrit(1,klon,nbp_lon,jjmp1,airephy,zx_tmp_2d)
    132132      airetot=0.
    133133!     DO j = 1, jjmp1
    134 !      DO i = 1, iim+1
    135 !       ij=i+(iim+1)*(j-1)
     134!      DO i = 1, nbp_lon+1
     135!       ij=i+(nbp_lon+1)*(j-1)
    136136!       DO k = 1, klev
    137137!        airetot=airetot+airedyn(i,j)
     
    151151      airetot=0.
    152152      DO j=1, jjmp1
    153        DO i=1, iim
     153       DO i=1, nbp_lon
    154154        airetot=airetot+zx_tmp_2d(i,j)
    155155       ENDDO
     
    160160!
    161161      zx_tmp_fi2d(1:klon)=aam/airetot
    162       CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
     162      CALL gr_fi_ecrit(1,klon,nbp_lon,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
    163163      CALL histwrite(nid_day_seri,"momang",itau_w,zx_tmp_2d, &
    164                      iim*jjmp1,ndex2d)
     164                     nbp_lon*jjmp1,ndex2d)
    165165!
    166166      zx_tmp_fi2d(1:klon)=torsfc/airetot
    167       CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
     167      CALL gr_fi_ecrit(1,klon,nbp_lon,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
    168168      CALL histwrite(nid_day_seri,"torsfc",itau_w,zx_tmp_2d, &
    169                      iim*jjmp1,ndex2d)
     169                     nbp_lon*jjmp1,ndex2d)
    170170!
    171171!IM 151004 END
     
    175175      zx_tmp_fi2d(1:klon)=moyglo
    176176!
    177       CALL gr_fi_ecrit(1,klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
     177      CALL gr_fi_ecrit(1,klon,nbp_lon,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
    178178      CALL histwrite(nid_day_seri,"tamv",itau_w, &
    179                      zx_tmp_2d,iim*jjmp1,ndex2d)
     179                     zx_tmp_2d,nbp_lon*jjmp1,ndex2d)
    180180!
    181181      ok_msk=.FALSE.
     
    184184      zx_tmp_fi2d(1:klon)=moyglo
    185185!
    186       CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
     186      CALL gr_fi_ecrit(1, klon,nbp_lon,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
    187187      CALL histwrite(nid_day_seri,"psol",itau_w, &
    188                      zx_tmp_2d,iim*jjmp1,ndex2d)
     188                     zx_tmp_2d,nbp_lon*jjmp1,ndex2d)
    189189!
    190190      ok_msk=.FALSE.
     
    193193      zx_tmp_fi2d(1:klon)=moyglo
    194194!
    195       CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
     195      CALL gr_fi_ecrit(1, klon,nbp_lon,jjmp1, zx_tmp_fi2d,zx_tmp_2d)
    196196      CALL histwrite(nid_day_seri,"evap",itau_w, &
    197                      zx_tmp_2d,iim*jjmp1,ndex2d)
     197                     zx_tmp_2d,nbp_lon*jjmp1,ndex2d)
    198198!
    199199!     DO i=1, klon
     
    207207!     zx_tmp_fi2d(1:klon)=moyglo
    208208!
    209 !     CALL gr_fi_ecrit(1, klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
     209!     CALL gr_fi_ecrit(1, klon,nbp_lon,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
    210210!     CALL histwrite(nid_day_seri,"SnowFrac",
    211 !    .               itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
     211!    .               itau_w,zx_tmp_2d,nbp_lon*jjmp1,ndex2d)
    212212!
    213213!     DO i=1, klon
     
    223223!     zx_tmp_fi2d(1:klon)=moyglo
    224224!
    225 !     CALL gr_fi_ecrit(1, klon,iim,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
     225!     CALL gr_fi_ecrit(1, klon,nbp_lon,jjmp1,zx_tmp_fi2d,zx_tmp_2d)
    226226!     CALL histwrite(nid_day_seri,"snow_depth",itau_w,
    227 !    .               zx_tmp_2d,iim*jjmp1,ndex2d)
     227!    .               zx_tmp_2d,nbp_lon*jjmp1,ndex2d)
    228228!
    229229      DO i=1, klon
     
    237237      zx_tmp_fi2d(1:klon)=moyglo
    238238!
    239       CALL gr_fi_ecrit(1, klon,iim,jjmp1, zx_tmp_fi2d, zx_tmp_2d)
     239      CALL gr_fi_ecrit(1, klon,nbp_lon,jjmp1, zx_tmp_fi2d, zx_tmp_2d)
    240240      CALL histwrite(nid_day_seri,"tsol_"//clnsurf(is_oce), &
    241                      itau_w,zx_tmp_2d,iim*jjmp1,ndex2d)
     241                     itau_w,zx_tmp_2d,nbp_lon*jjmp1,ndex2d)
    242242!
    243243!=================================================================
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/yamada.F90

    r3809 r3818  
    66  USE dimphy
    77  IMPLICIT NONE
    8   ! .......................................................................
    9   ! ym#include "dimensions.h"
    10   ! ym#include "dimphy.h"
    11   ! .......................................................................
    128
    139  ! dt : pas de temps
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/yamada4.F90

    r3817 r3818  
    77  USE inifis_mod, ONLY: prt_level
    88  IMPLICIT NONE
    9   ! .......................................................................
    10   ! ym#include "dimensions.h"
    11   ! ym#include "dimphy.h"
    12   ! .......................................................................
    139
    1410  ! dt : pas de temps
     
    496492  USE dimphy
    497493  IMPLICIT NONE
    498   ! .......................................................................
    499   include "dimensions.h"
    500   ! ccc#include "dimphy.h"
    501   ! .......................................................................
    502494
    503495  ! dt : pas de temps
     
    572564  USE dimphy
    573565  IMPLICIT NONE
    574   ! .......................................................................
    575   include "dimensions.h"
    576   ! ccc#include "dimphy.h"
    577   ! .......................................................................
    578566
    579567  ! dt : pas de temps
  • dynamico_lmdz/aquaplanet/LMDZ5/libf/phylmd/yamada_c.F90

    r3817 r3818  
    99      IMPLICIT NONE
    1010#include "YOMCST.h"
    11 !.......................................................................
    12 !ym#include "dimensions.h"
    13 !ym#include "dimphy.h"
    14 !.......................................................................
    1511!
    1612! timestep : pas de temps
Note: See TracChangeset for help on using the changeset viewer.