Ignore:
Timestamp:
Sep 11, 2013, 2:34:44 PM (11 years ago)
Author:
emillour
Message:

Mars GCM: (a first step towards using parallel dynamics)

  • IMPORTANT CHANGE: Implemented dynamic tracers. It is no longer necessary to compile the model with the '-t #' option, number of tracers is simply read from tracer.def file (as before). Adapted makegcm_* scripts (and co.) accordingly. Technical aspects of the switch to dynamic tracers are:
    • advtrac.h (in dyn3d) removed and replaced by module infotrac.F
    • tracer.h (in phymars) removed and replaced by module tracer_mod.F90 (which contains nqmx, the number of tracers, etc. and can be used anywhere in the physics).
  • Included some side cleanups: removed unused files (in dyn3d) anldoppler2.F, anl_mcdstats.F and anl_stats-diag.F, and all the unecessary dimensions.* files in grid/dimension.
  • Checked that changes are clean and that GCM yields identical results (in debug mode) to previous svn version.

EM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/LMDZ.MARS/libf/aeronomars/moldiff_red.F90

    r1020 r1036  
    11subroutine moldiff_red(pplay,pplev,pt,pdt,pq,pdq,ptimestep,zzlay,pdteuv,pdtconduc,pdqdiff)
     2
     3use tracer_mod, only: nqmx, noms, mmol
    24
    35implicit none
     
    911#include "comdiurn.h"
    1012#include "chimiedata.h"
    11 #include "tracer.h"
     13!#include "tracer.h"
    1214#include "conc.h"
    1315#include "diffusion.h"
     
    904906
    905907        SUBROUTINE QMNEW(Q1,DQ,Q2,dtime,nl,nq,gc,ig)
     908        use tracer_mod, only: nqmx
    906909        IMPLICIT NONE
    907 #include "dimensions.h"
     910!#include "dimensions.h"
    908911
    909912        INTEGER,INTENT(IN) :: nl,nq
     
    939942
    940943        SUBROUTINE MMOY(massemoy,mmol,qq,gc,nl,nq)
    941         IMPLICIT NONE
    942 #include "dimensions.h"
     944        use tracer_mod, only: nqmx
     945        IMPLICIT NONE
     946!#include "dimensions.h"
    943947
    944948        INTEGER :: nl,nq,l
     
    10231027     & qq,mmol,gc,Praf,Traf,Qraf,Mraf,Zraf,                             &
    10241028     & Nraf,Nrafk,Rraf,Rrafk,il,nl,nq,nlx,ig)
     1029        use tracer_mod, only: nqmx
    10251030        IMPLICIT NONE
    1026 #include "dimensions.h"
     1031!#include "dimensions.h"
    10271032       
    10281033        INTEGER :: nl,nq,il,l,i,iq,nlx,iz,ig
     
    13641369        SUBROUTINE GCMGRID_P(Z,P,Q,T,Nk,Rk,qq,qnew,tt,tnew,             &
    13651370     &    pp,M,gc,nl,nq,nlx,ig)
    1366         IMPLICIT NONE
    1367 #include "dimensions.h"
     1371        use tracer_mod, only: nqmx
     1372        IMPLICIT NONE
     1373!#include "dimensions.h"
    13681374        INTEGER :: nl,nq,nlx,il,nn,iP,ig,compteur
    13691375        INTEGER,DIMENSION(1) :: indP
     
    14651471        SUBROUTINE GCMGRID_P2(Z,P,Q,T,Nk,Rk,qq,qnew,tt,tnew             &
    14661472     &   ,pp,M,gc,nl,nq,nlx,facM,ig)
     1473        use tracer_mod, only: nqmx
    14671474        IMPLICIT NONE
    1468 #include "dimensions.h"
     1475!#include "dimensions.h"
    14691476        INTEGER :: nl,nq,nlx,il,nn,iP,ig,compteur
    14701477        INTEGER,DIMENSION(1) :: indP
Note: See TracChangeset for help on using the changeset viewer.