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

Last change on this file since 4273 was 4263, checked in by dcugnet, 2 years 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 lguez $
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.