Ignore:
Timestamp:
May 4, 2005, 5:11:29 PM (20 years ago)
Author:
Laurent Fairhead
Message:

Modifications faites à la physique pour la rendre parallele YM
Une branche de travail LMDZ4_par_0 a été créée provisoirement afin de tester
les modifs pleinement avant leurs inclusions dans le tronc principal
LF

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ4/branches/LMDZ4_par_0/libf/phylmd/phyredem.F

    r633 r634  
    44c
    55      SUBROUTINE phyredem (fichnom,dtime,radpas,
    6      .           rlat,rlon, pctsrf,tsol,tsoil,deltat,qsurf,qsol,snow,
    7      .           albedo, alblw, evap, rain_fall, snow_fall,
    8      .           solsw, sollw,fder,
    9      .           radsol,frugs,agesno,
    10      .           zmea,zstd,zsig,zgam,zthe,zpic,zval,rugsrel,
    11      .           t_ancien, q_ancien, rnebcon, ratqs, clwcon,
    12      .           run_off_lic_0)
     6     .           rlat_p,rlon_p, pctsrf_p,tsol_p,tsoil_p,deltat_p,
     7     .           qsurf_p,qsol_p,snow_p,albedo_p, alblw_p, evap_p,
     8     .           rain_fall_p, snow_fall_p,solsw_p, sollw_p,fder_p,
     9     .           radsol_p,frugs_p,agesno_p,zmea_p,zstd_p,zsig_p,
     10     .           zgam_p,zthe_p,zpic_p,zval_p,rugsrel_p,
     11     .           t_ancien_p, q_ancien_p, rnebcon_p, ratqs_p, clwcon_p,
     12     .           run_off_lic_0_p)
     13      USE dimphy
    1314      IMPLICIT none
    1415c======================================================================
     
    1617c Objet: Ecriture de l'etat de redemarrage pour la physique
    1718c======================================================================
    18 #include "dimensions.h"
    19 #include "dimphy.h"
     19cym#include "dimensions.h"
     20cym#include "dimphy.h"
    2021#include "netcdf.inc"
    2122#include "indicesol.h"
     
    2829      REAL dtime
    2930      INTEGER radpas
    30       REAL rlat(klon), rlon(klon)
    31       REAL tsol(klon,nbsrf)
    32       REAL tsoil(klon,nsoilmx,nbsrf)
    33       REAL deltat(klon)
    34       REAL qsurf(klon,nbsrf)
    35       REAL qsol(klon)
    36       REAL snow(klon,nbsrf)
    37       REAL albedo(klon,nbsrf)
     31      REAL rlat_p(klon), rlon_p(klon)
     32      REAL tsol_p(klon,nbsrf)
     33      REAL tsoil_p(klon,nsoilmx,nbsrf)
     34      REAL deltat_p(klon)
     35      REAL qsurf_p(klon,nbsrf)
     36      REAL qsol_p(klon)
     37      REAL snow_p(klon,nbsrf)
     38      REAL albedo_p(klon,nbsrf)
    3839cIM BEG
    39       REAL alblw(klon,nbsrf)
     40      REAL alblw_p(klon,nbsrf)
    4041cIM END
    41       REAL evap(klon,nbsrf)
    42       REAL rain_fall(klon)
    43       REAL snow_fall(klon)
    44       real solsw(klon)
    45       real sollw(klon)
    46       real fder(klon)
    47       REAL radsol(klon)
    48       REAL frugs(klon,nbsrf)
    49       REAL agesno(klon,nbsrf)
    50       REAL zmea(klon)
    51       REAL zstd(klon)
    52       REAL zsig(klon)
    53       REAL zgam(klon)
    54       REAL zthe(klon)
    55       REAL zpic(klon)
    56       REAL zval(klon)
    57       REAL rugsrel(klon)
    58       REAL pctsrf(klon, nbsrf)
    59       REAL t_ancien(klon,klev), q_ancien(klon,klev)
    60       real clwcon(klon,klev),rnebcon(klon,klev),ratqs(klon,klev)
     42      REAL evap_p(klon,nbsrf)
     43      REAL rain_fall_p(klon)
     44      REAL snow_fall_p(klon)
     45      real solsw_p(klon)
     46      real sollw_p(klon)
     47      real fder_p(klon)
     48      REAL radsol_p(klon)
     49      REAL frugs_p(klon,nbsrf)
     50      REAL agesno_p(klon,nbsrf)
     51      REAL zmea_p(klon)
     52      REAL zstd_p(klon)
     53      REAL zsig_p(klon)
     54      REAL zgam_p(klon)
     55      REAL zthe_p(klon)
     56      REAL zpic_p(klon)
     57      REAL zval_p(klon)
     58      REAL rugsrel_p(klon)
     59      REAL pctsrf_p(klon, nbsrf)
     60      REAL t_ancien_p(klon,klev), q_ancien_p(klon,klev)
     61      real clwcon_p(klon,klev),rnebcon_p(klon,klev),ratqs_p(klon,klev)
     62      REAL run_off_lic_0_p(klon)
     63     
     64      REAL rlat(klon2), rlon(klon2)
     65      REAL tsol(klon2,nbsrf)
     66      REAL tsoil(klon2,nsoilmx,nbsrf)
     67      REAL deltat(klon2)
     68      REAL qsurf(klon2,nbsrf)
     69      REAL qsol(klon2)
     70      REAL snow(klon2,nbsrf)
     71      REAL albedo(klon2,nbsrf)
     72      REAL alblw(klon2,nbsrf)
     73      REAL evap(klon2,nbsrf)
     74      REAL rain_fall(klon2)
     75      REAL snow_fall(klon2)
     76      real solsw(klon2)
     77      real sollw(klon2)
     78      real fder(klon2)
     79      REAL radsol(klon2)
     80      REAL frugs(klon2,nbsrf)
     81      REAL agesno(klon2,nbsrf)
     82      REAL zmea(klon2)
     83      REAL zstd(klon2)
     84      REAL zsig(klon2)
     85      REAL zgam(klon2)
     86      REAL zthe(klon2)
     87      REAL zpic(klon2)
     88      REAL zval(klon2)
     89      REAL rugsrel(klon2)
     90      REAL pctsrf(klon2, nbsrf)
     91      REAL t_ancien(klon2,klev), q_ancien(klon2,klev)
     92      real clwcon(klon2,klev),rnebcon(klon2,klev),ratqs(klon2,klev)
    6193      REAL run_off_lic_0(klon)
    6294c
     
    71103      CHARACTER*2 str2
    72104c
     105
     106      call GatherField( rlat_p,rlat,1)
     107      call GatherField( rlon_p,rlon,1)
     108      call GatherField( tsol_p,tsol,nbsrf)
     109      call GatherField( tsoil_p,tsoil,nsoilmx*nbsrf)
     110      call GatherField( deltat_p,deltat,1)
     111      call GatherField( qsurf_p,qsurf,nbsrf)
     112      call GatherField( qsol_p,qsol,1)
     113      call GatherField( snow_p,snow,nbsrf)
     114      call GatherField( albedo_p,albedo,nbsrf)
     115      call GatherField( alblw_p,alblw,nbsrf)
     116      call GatherField( evap_p,evap,nbsrf)
     117      call GatherField( radsol_p,radsol,1)
     118      call GatherField( rain_fall_p,rain_fall,1)
     119      call GatherField( snow_fall_p,snow_fall,1)
     120      call GatherField( sollw_p,sollw,1)
     121      call GatherField( solsw_p,solsw,1)
     122      call GatherField( fder_p,fder,1)
     123      call GatherField( frugs_p,frugs,nbsrf)
     124      call GatherField( agesno_p,agesno,nbsrf)
     125      call GatherField( zmea_p,zmea,1)
     126      call GatherField( zstd_p,zstd,1)
     127      call GatherField( zsig_p,zsig,1)
     128      call GatherField( zgam_p,zgam,1)
     129      call GatherField( zthe_p,zthe,1)
     130      call GatherField( zpic_p,zpic,1)
     131      call GatherField( zval_p,zval,1)
     132      call GatherField( rugsrel_p,rugsrel,1)
     133      call GatherField( pctsrf_p,pctsrf, nbsrf)
     134      call GatherField( run_off_lic_0_p,run_off_lic_0,1)
     135      call GatherField( t_ancien_p,t_ancien,klev)
     136      call GatherField( q_ancien_p,q_ancien,klev)
     137      call GatherField( rnebcon_p,rnebcon,klev)
     138      call GatherField( clwcon_p,clwcon,klev)
     139      call GatherField( ratqs_p,ratqs,klev)
     140     
     141      if (phy_rank==0) then
     142     
    73143      ierr = NF_CREATE(fichnom, NF_CLOBBER, nid)
    74144      IF (ierr.NE.NF_NOERR) THEN
     
    780850      ierr = NF_CLOSE(nid)
    781851c
     852      endif   ! phy_rank==0
    782853      RETURN
    783854      END
Note: See TracChangeset for help on using the changeset viewer.