source: LMDZ6/trunk/libf/phy_common/physics_distribution_mod.F90 @ 4285

Last change on this file since 4285 was 4263, checked in by dcugnet, 22 months ago

Fixes for INCO, CO2i AND REPROBUS, mostly because some sections are specific to type_trac=="lmdz",
which is not always equivalent to ANY(types_trac=='lmdz).
Also force the water phases to get tracers(*)%component='lmdz' so that nqo can be correctly computed.

  • Property copyright set to
    Name of program: LMDZ
    Creation date: 1984
    Version: LMDZ5
    License: CeCILL version 2
    Holder: Laboratoire de m\'et\'eorologie dynamique, CNRS, UMR 8539
    See the license file in the root directory
  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 2.1 KB
Line 
1!
2!$Id: physics_distribution_mod.F90 4263 2022-09-21 07:35:28Z jghattas $
3!
4MODULE physics_distribution_mod
5
6
7CONTAINS
8
9  SUBROUTINE init_physics_distribution(grid_type, nvertex, &
10                                       nbp, nbp_lon, nbp_lat, nbp_lev, &
11                                       communicator)
12  USE mod_phys_lmdz_para, ONLY: init_phys_lmdz_para, klon_omp
13  USE mod_grid_phy_lmdz, ONLY: init_grid_phy_lmdz
14  USE dimphy, ONLY : Init_dimphy
15  USE infotrac_phy, ONLY : types_trac
16#ifdef REPROBUS
17  USE CHEM_REP, ONLY : Init_chem_rep_phys
18#endif
19
20  IMPLICIT NONE
21    INTEGER,INTENT(IN) :: grid_type
22    INTEGER,INTENT(IN) :: nvertex
23    INTEGER,INTENT(IN) :: nbp           
24    INTEGER,INTENT(IN) :: nbp_lon
25    INTEGER,INTENT(IN) :: nbp_lat
26    INTEGER,INTENT(IN) :: nbp_lev
27    INTEGER,INTENT(IN) :: communicator
28
29
30    CALL init_grid_phy_lmdz(grid_type,nvertex, nbp_lon,nbp_lat,nbp_lev)
31    CALL init_phys_lmdz_para(nbp,nbp_lon, nbp_lat,nbp_lev, grid_type,nvertex, communicator)
32!$OMP PARALLEL
33    CALL init_dimphy(klon_omp,nbp_lev)
34
35#ifdef INCA
36       CALL Init_inca_dim(klon_omp,nbp_lev)
37#endif
38
39#ifdef REPROBUS
40! Initialization of Reprobus
41    IF (ANY(types_trac == 'repr')) CALL Init_chem_rep_phys(klon_omp,nbp_lev)
42#endif
43
44!$OMP END PARALLEL
45
46  END SUBROUTINE init_physics_distribution 
47
48!SUBROUTINE Init_Phys_lmdz(iim,jjp1,llm,nb_proc,distrib)
49!  USE mod_phys_lmdz_para, ONLY: Init_phys_lmdz_para!, klon_omp
50!  USE mod_grid_phy_lmdz, ONLY: Init_grid_phy_lmdz!, nbp_lev
51!  USE dimphy, ONLY : Init_dimphy
52!  USE infotrac_phy, ONLY : types_trac
53!#ifdef REPROBUS
54!  USE CHEM_REP, ONLY : Init_chem_rep_phys
55!#endif
56
57!  IMPLICIT NONE
58 
59!    INTEGER,INTENT(in) :: iim
60!    INTEGER,INTENT(in) :: jjp1
61!    INTEGER,INTENT(in) :: llm
62!    INTEGER,INTENT(in) :: nb_proc
63!    INTEGER,INTENT(in) :: distrib(0:nb_proc-1)
64
65
66!    CALL Init_grid_phy_lmdz(iim,jjp1,llm)
67!    CALL Init_phys_lmdz_para(iim,jjp1,nb_proc,distrib)
68!!$OMP PARALLEL
69!    CALL Init_dimphy(klon_omp,nbp_lev)
70!
71!#ifdef REPROBUS
72!! Initialization of Reprobus
73!    IF (ANY(types_trac == 'repr')) CALL Init_chem_rep_phys(klon_omp,nbp_lev)
74!    END IF
75!#endif
76!
77!!$OMP END PARALLEL
78 
79!END SUBROUTINE Init_Phys_lmdz 
80
81
82
83
84
85
86
87
88END MODULE physics_distribution_mod
89
Note: See TracBrowser for help on using the repository browser.