source: trunk/LMDZ.MARS/libf/phy_common/physics_distribution_mod.F90 @ 1621

Last change on this file since 1621 was 1543, checked in by emillour, 9 years ago

All models: Further adaptations to keep up with changes in LMDZ5 concerning
physics/dynamics separation:

  • dyn3d:
  • adapted gcm.F so that all physics initializations are now done in iniphysiq.
  • dyn3dpar:
  • adapted gcm.F so that all physics initializations are now done in iniphysiq.
  • updated calfis_p.F to follow up with changes.
  • copied over updated "bands.F90" from LMDZ5.
  • dynphy_lonlat:
  • calfis_p.F90, mod_interface_dyn_phys.F90, follow up of changes in phy_common/mod_* routines
  • phy_common:
  • added "geometry_mod.F90" to store information about the grid (replaces phy*/comgeomphy.F90) and give variables friendlier names: rlond => longitude , rlatd => latitude, airephy => cell_area, cuphy => dx , cvphy => dy
  • added "physics_distribution_mod.F90"
  • updated "mod_grid_phy_lmdz.F90", "mod_phys_lmdz_mpi_data.F90", "mod_phys_lmdz_para.F90", "mod_phys_lmdz_mpi_transfert.F90", "mod_grid_phy_lmdz.F90", "mod_phys_lmdz_omp_data.F90", "mod_phys_lmdz_omp_transfert.F90", "write_field_phy.F90" and "ioipsl_getin_p_mod.F90" to LMDZ5 versions.
  • phy[venus/titan/mars/std]:
  • removed "init_phys_lmdz.F90", "comgeomphy.F90"; adapted routines to use geometry_mod (longitude, latitude, cell_area, etc.)

EM

File size: 1.8 KB
Line 
1!
2!$Id: physics_distribution_mod.F90 2351 2015-08-25 15:14:59Z emillour $
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
13  USE mod_grid_phy_lmdz, ONLY: init_grid_phy_lmdz
14  IMPLICIT NONE
15    INTEGER,INTENT(IN) :: grid_type
16    INTEGER,INTENT(IN) :: nvertex
17    INTEGER,INTENT(IN) :: nbp           
18    INTEGER,INTENT(IN) :: nbp_lon
19    INTEGER,INTENT(IN) :: nbp_lat
20    INTEGER,INTENT(IN) :: nbp_lev
21    INTEGER,INTENT(IN) :: communicator
22
23
24    CALL init_grid_phy_lmdz(grid_type,nvertex, nbp_lon,nbp_lat,nbp_lev)
25    CALL init_phys_lmdz_para(nbp,nbp_lon, nbp_lat, communicator)
26
27  END SUBROUTINE init_physics_distribution 
28
29!SUBROUTINE Init_Phys_lmdz(iim,jjp1,llm,nb_proc,distrib)
30!  USE mod_phys_lmdz_para, ONLY: Init_phys_lmdz_para!, klon_omp
31!  USE mod_grid_phy_lmdz, ONLY: Init_grid_phy_lmdz!, nbp_lev
32!  USE dimphy, ONLY : Init_dimphy
33!  USE infotrac_phy, ONLY : type_trac
34!#ifdef REPROBUS
35!  USE CHEM_REP, ONLY : Init_chem_rep_phys
36!#endif
37
38!  IMPLICIT NONE
39 
40!    INTEGER,INTENT(in) :: iim
41!    INTEGER,INTENT(in) :: jjp1
42!    INTEGER,INTENT(in) :: llm
43!    INTEGER,INTENT(in) :: nb_proc
44!    INTEGER,INTENT(in) :: distrib(0:nb_proc-1)
45
46
47!    CALL Init_grid_phy_lmdz(iim,jjp1,llm)
48!    CALL Init_phys_lmdz_para(iim,jjp1,nb_proc,distrib)
49!!$OMP PARALLEL
50!    CALL Init_dimphy(klon_omp,nbp_lev)
51!
52!! Initialization of Reprobus
53!    IF (type_trac == 'repr') THEN
54!#ifdef REPROBUS
55!       CALL Init_chem_rep_phys(klon_omp,nbp_lev)
56!#endif
57!    END IF
58!
59!!$OMP END PARALLEL
60 
61!END SUBROUTINE Init_Phys_lmdz 
62
63
64
65
66
67
68
69
70END MODULE physics_distribution_mod
71
Note: See TracBrowser for help on using the repository browser.