|
Last change
on this file since 1676 was
1621,
checked in by emillour, 9 years ago
|
|
Further work on full dynamics/physics separation.
LMDZ.COMMON:
- added phy_common/vertical_layers_mod.F90 to store information on vertical
grid. This is where routines in the physics should get the information.
- The contents of vertical_layers_mod intialized via
dynphy_lonlat/inigeomphy_mod.F90.
LMDZ.MARS:
- physics now completely decoupled from dynamics; the physics package
may now be compiled as a library (-libphy option of makelmdz_fcm).
- created an "ini_tracer_mod" routine in module "tracer_mod" for a cleaner
initialization of the later.
- removed some purely dynamics-related outputs (etot0, zoom parameters, etc.)
from diagfi.nc and stats.nc outputs as these informations are not available
in the physics.
LMDZ.GENERIC:
- physics now completely decoupled from dynamics; the physics package
may now be compiled as a library (-libphy option of makelmdz_fcm).
- added nqtot to tracer_h.F90.
- removed some purely dynamics-related outputs (etot0, zoom parameters, etc.)
from diagfi.nc and stats.nc outputs as these informations are not available
in the physics.
LMDZ.VENUS:
- physics now completely decoupled from dynamics; the physics package
may now be compiled as a library (-libphy option of makelmdz_fcm).
- added infotrac_phy.F90 to store information on tracers in the physics.
Initialized via iniphysiq.
- added cpdet_phy_mod.F90 to store t2tpot etc. functions to be used in the
physics. Initialized via iniphysiq. IMPORTANT: there are some hard-coded
constants! These should match what is in cpdet_mod.F90 in the dynamics.
- got rid of references to moyzon_mod module within the physics. The
required variables (tmoy, plevmoy) are passed to the physics as arguments
to physiq.
LMDZ.TITAN:
- added infotrac_phy.F90 to store information on tracers in the physics.
Initialized via iniphysiq.
- added cpdet_phy_mod.F90 to store t2tpot etc. functions to be used in the
physics.
- Extra work required to completely decouple physics and dynamics: moyzon_mod
should be cleaned up and information passed from dynamics to physics as
as arguments. Likewise moyzon_ch and moyzon_mu should not be queried from
logic_mod (which is in the dynamics).
EM
|
|
File size:
1.1 KB
|
| Line | |
|---|
| 1 | |
|---|
| 2 | ! $Id: $ |
|---|
| 3 | |
|---|
| 4 | MODULE infotrac_phy |
|---|
| 5 | |
|---|
| 6 | ! Infotrac for physics; contains the same information as infotrac for |
|---|
| 7 | ! the dynamics |
|---|
| 8 | IMPLICIT NONE |
|---|
| 9 | |
|---|
| 10 | ! iflag_trac: ==1 if running with tracers |
|---|
| 11 | INTEGER,SAVE :: iflag_trac |
|---|
| 12 | !$OMP THREADPRIVATE(iflag_trac) |
|---|
| 13 | |
|---|
| 14 | ! nqtot : total number of tracers |
|---|
| 15 | INTEGER,SAVE :: nqtot |
|---|
| 16 | !$OMP THREADPRIVATE(nqtot) |
|---|
| 17 | |
|---|
| 18 | ! tracer names |
|---|
| 19 | CHARACTER(len=20),ALLOCATABLE,DIMENSION(:),SAVE :: tname |
|---|
| 20 | CHARACTER(len=23),ALLOCATABLE,DIMENSION(:),SAVE :: ttext ! tracer long name for diagnostics |
|---|
| 21 | !$OMP THREADPRIVATE(tname,ttext) |
|---|
| 22 | |
|---|
| 23 | CONTAINS |
|---|
| 24 | |
|---|
| 25 | SUBROUTINE init_infotrac_phy(iflag_trac_,nqtot_,tname_,ttext_) |
|---|
| 26 | ! Initialize module variables |
|---|
| 27 | IMPLICIT NONE |
|---|
| 28 | |
|---|
| 29 | INTEGER,INTENT(IN) :: iflag_trac_ ! ==1 if running with tracers |
|---|
| 30 | INTEGER,INTENT(IN) :: nqtot_ ! total number of tracers |
|---|
| 31 | CHARACTER(LEN=*),INTENT(IN) :: tname_(nqtot_) |
|---|
| 32 | CHARACTER(LEN=*),INTENT(IN) :: ttext_(nqtot_) |
|---|
| 33 | |
|---|
| 34 | INTEGER :: iq |
|---|
| 35 | |
|---|
| 36 | iflag_trac=iflag_trac_ |
|---|
| 37 | nqtot=nqtot_ |
|---|
| 38 | |
|---|
| 39 | ALLOCATE(tname(nqtot)) |
|---|
| 40 | ALLOCATE(ttext(nqtot)) |
|---|
| 41 | DO iq=1,nqtot |
|---|
| 42 | tname(iq)=tname_(iq) |
|---|
| 43 | ttext(iq)=ttext_(iq) |
|---|
| 44 | ENDDO |
|---|
| 45 | |
|---|
| 46 | END SUBROUTINE init_infotrac_phy |
|---|
| 47 | |
|---|
| 48 | END MODULE infotrac_phy |
|---|
Note: See
TracBrowser
for help on using the repository browser.