source: trunk/LMDZ.GENERIC/libf/phystd/dimphy.F90 @ 1255

Last change on this file since 1255 was 1216, checked in by emillour, 11 years ago

Generic model:
Major cleanup, in order to ease the use of LMDZ.GENERIC with (parallel) dynamics
in LMDZ.COMMON: (NB: this will break LMDZ.UNIVERSAL, which should be thrashed
in the near future)

  • Updated makegcm_* scripts (and makdim) and added the "-full" (to enforce full recomputation of the model) option
  • In dyn3d: converted control.h to module control_mod.F90 and converted iniadvtrac.F to module infotrac.F90
  • Added module mod_const_mpi.F90 in dyn3d (not used in serial mode)
  • Rearanged input/outputs routines everywhere to handle serial/MPI cases. physdem.F => phyredem.F90 , phyetat0.F => phyetat0.F90 ; all read/write routines for startfi files are gathered in module iostart.F90
  • added parallelism related routines init_phys_lmdz.F90, comgeomphy.F90, dimphy.F90, iniphysiq.F90, mod_grid_phy_lmdz.F90, mod_phys_lmdz_mpi_data.F90, mod_phys_lmdz_mpi_transfert.F90, mod_phys_lmdz_omp_data.F90, mod_phys_lmdz_omp_transfert.F90, mod_phys_lmdz_para.F90, mod_phys_lmdz_transfert_para.F90 in phymars and mod_const_mpi.F90 in dyn3d (for compliance with parallelism)
  • added created generic routines 'planetwide_maxval' and 'planetwide_minval', in module "planetwide_mod", that enable obtaining the max and min of a field over the whole planet. This should be further imroved with computation of means (possibly area weighed), etc.

EM

File size: 657 bytes
Line 
1MODULE dimphy
2 
3  INTEGER,SAVE :: klon   ! number of atmospheric columns (for this OpenMP subgrid)
4  INTEGER,SAVE :: klev   ! number of atmospheric layers
5  INTEGER,SAVE :: klevp1 ! number of atmospheric layers+1
6  INTEGER,SAVE :: klevm1 ! number of atmospheric layers-1
7!  INTEGER,SAVE :: kflev
8
9!$OMP THREADPRIVATE(klon)
10
11CONTAINS
12 
13  SUBROUTINE Init_dimphy(klon0,klev0)
14  IMPLICIT NONE
15 
16    INTEGER, INTENT(in) :: klon0
17    INTEGER, INTENT(in) :: klev0
18   
19    klon=klon0
20   
21!$OMP MASTER
22    klev=klev0
23    klevp1=klev+1
24    klevm1=klev-1
25!    kflev=klev
26!$OMP END MASTER   
27!$OMP BARRIER
28   
29  END SUBROUTINE Init_dimphy
30
31 
32END MODULE dimphy
Note: See TracBrowser for help on using the repository browser.