Ignore:
Timestamp:
Mar 3, 2009, 5:40:26 PM (15 years ago)
Author:
jghattas
Message:

Creation du module infotrac:

  • contient les variables de advtrac.h
  • contient la subroutine iniadvtrac renommer en infotrac_init
  • le nombre des traceurs est lu dans tracer.def en dynamique (ou par default ou recu par INCA)
  • ce module est utilise dans la dynamique et la physique
  • contient aussi la variable nbtr qui avant etait stockee dans dimphy

Le fichier advtrac.h n'existe plus.
La compilation ne prend plus en compte le nombre de traceur.

/JG

File:
1 edited

Legend:

Unmodified
Added
Removed
  • LMDZ4/branches/LMDZ4-dev/libf/phylmd/physiq.F

    r1102 r1114  
    22c#define IO_DEBUG
    33
    4       SUBROUTINE physiq (nlon,nlev,nqmax,
     4      SUBROUTINE physiq (nlon,nlev,
    55     .            debut,lafin,rjourvrai,gmtime,pdtphys,
    66     .            paprs,pplay,pphi,pphis,presnivs,clesphy0,
     
    1515      USE write_field_phy
    1616      USE dimphy
     17      USE infotrac
    1718      USE mod_grid_phy_lmdz
    1819      USE mod_phys_lmdz_para
     
    5051c nlon----input-I-nombre de points horizontaux
    5152c nlev----input-I-nombre de couches verticales
    52 c nqmax---input-I-nombre de traceurs (y compris vapeur d'eau) = 1
    5353c debut---input-L-variable logique indiquant le premier passage
    5454c lafin---input-L-variable logique indiquant le dernier passage
     
    8787#include "clesphys.h"
    8888#include "control.h"
    89 !#include "logic.h"
    9089#include "temps.h"
    91 cym#include "comgeomphy.h"
    92 #include "advtrac.h"
    9390#include "iniprint.h"
    9491#include "thermcell.h"
     
    184181      INTEGER nlon
    185182      INTEGER nlev
    186       INTEGER nqmax
    187183      REAL rjourvrai
    188184      REAL gmtime
     
    200196      REAL v(klon,klev)
    201197      REAL t(klon,klev),theta(klon,klev)
    202       REAL qx(klon,klev,nqmax)
     198      REAL qx(klon,klev,nqtot)
    203199      REAL flxmass_w(klon,klev)
    204200      REAL omega(klon,klev) ! vitesse verticale en Pa/s
     
    206202      REAL d_v(klon,klev)
    207203      REAL d_t(klon,klev)
    208       REAL d_qx(klon,klev,nqmax)
     204      REAL d_qx(klon,klev,nqtot)
    209205      REAL d_ps(klon)
    210206      real da(klon,klev),phi(klon,klev,klev),mp(klon,klev)
     
    11101106         write(lunout,*) 'DEBUT DE PHYSIQ !!!!!!!!!!!!!!!!!!!!'
    11111107         write(lunout,*)
    1112      s 'nlon,nlev,nqmax,debut,lafin,rjourvrai,gmtime,pdtphys'
     1108     s 'nlon,nlev,nqtot,debut,lafin,rjourvrai,gmtime,pdtphys'
    11131109         write(lunout,*)
    1114      s  nlon,nlev,nqmax,debut,lafin,rjourvrai,gmtime,pdtphys
     1110     s  nlon,nlev,nqtot,debut,lafin,rjourvrai,gmtime,pdtphys
    11151111
    11161112         write(lunout,*) 'papers, play, phi, u, v, t, omega'
     
    11701166      END IF
    11711167      ok_sync=.TRUE.
    1172       IF (nqmax .LT. 2) THEN
    1173          abort_message = 'eaux vapeur et liquide sont indispensables'
    1174          CALL abort_gcm (modname,abort_message,1)
    1175       ENDIF
     1168
    11761169      IF (debut) THEN
    11771170         CALL suphel ! initialiser constantes et parametres phys.
     
    15001493
    15011494c$OMP MASTER
    1502        call phys_output_open(jjmp1,nqmax,nlevSTD,clevSTD,nbteta,
     1495       call phys_output_open(jjmp1,nlevSTD,clevSTD,nbteta,
    15031496     &                        ctetaSTD,dtime,presnivs,ok_veget,
    15041497     &                        type_ocean,iflag_pbl,ok_mensuel,ok_journe,
     
    15541547     $                   calday,
    15551548     $                   klon,
    1556      $                   nqmax,
     1549     $                   nqtot,
    15571550     $                   pdtphys,
    15581551     $                   annee_ref,
     
    16101603      ENDDO
    16111604      ENDDO
    1612       DO iq = 1, nqmax
     1605      DO iq = 1, nqtot
    16131606      DO k = 1, klev
    16141607      DO i = 1, klon
     
    16331626      ENDDO
    16341627      ENDDO
    1635       IF (nqmax.GE.3) THEN
    1636       DO iq = 3, nqmax
     1628      IF (nqtot.GE.3) THEN
     1629      DO iq = 3, nqtot
    16371630      DO  k = 1, klev
    16381631      DO  i = 1, klon
     
    31633156     I                   debut,
    31643157     I                   lafin,
    3165      I                   nqmax-2,
    31663158     I                   nlon,
    31673159     I                   nlev,
     
    33863378      ENDDO
    33873379c
    3388       IF (nqmax.GE.3) THEN
    3389       DO iq = 3, nqmax
     3380      IF (nqtot.GE.3) THEN
     3381      DO iq = 3, nqtot
    33903382      DO  k = 1, klev
    33913383      DO  i = 1, klon
     
    34213413      write(lunout,*) 'FIN DE PHYSIQ !!!!!!!!!!!!!!!!!!!!'
    34223414      write(lunout,*)
    3423      s 'nlon,nlev,nqmax,debut,lafin,rjourvrai,gmtime,pdtphys pct tlos'
     3415     s 'nlon,nlev,nqtot,debut,lafin,rjourvrai,gmtime,pdtphys pct tlos'
    34243416      write(lunout,*)
    3425      s  nlon,nlev,nqmax,debut,lafin,rjourvrai,gmtime,pdtphys,
     3417     s  nlon,nlev,nqtot,debut,lafin,rjourvrai,gmtime,pdtphys,
    34263418     s  pctsrf(igout,is_ter), pctsrf(igout,is_lic),pctsrf(igout,is_oce),
    34273419     s  pctsrf(igout,is_sic)
Note: See TracChangeset for help on using the changeset viewer.