source: LMDZ6/branches/IPSLCM6.0.15/libf/phymar/phyaqua_mod.F90

Last change on this file was 2351, checked in by Ehouarn Millour, 9 years ago

More on physics/dynamics separation and cleanup:

  • Set things up so that all physics-related initializations are done via iniphysiq.
  • Created a "geometry_mod.F90" module in phy_common to store information on the loacl grid (i.e. replaces comgeomphy) and moreover give these variables more obvious names (e.g.: rlond => longitude, rlatd => latitude, airephy => cell_area).
  • removed obsolete comgeomphy.h and comgeomphy.F90

EM

File size: 1023 bytes
Line 
1!
2! $Id: $
3!
4MODULE phyaqua_mod
5
6  IMPLICIT NONE
7
8CONTAINS
9
10  SUBROUTINE iniaqua(nlon, iflag_phys)
11
12  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
13  !  Create an initial state (startphy.nc) for the physics
14  !  Usefull for idealised cases (e.g. aquaplanets or testcases)
15  !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
16
17  USE phys_state_var_mod, ONLY: rlat, rlon, phys_state_var_init
18  USE mod_phys_lmdz_para, ONLY: klon_omp
19  USE geometry_mod, ONLY: longitude_deg, latitude_deg
20  IMPLICIT NONE
21     
22  INTEGER,INTENT(IN) :: nlon,iflag_phys
23
24  ! local variables
25  REAL :: pi
26
27  ! initializations:
28  pi=2.*ASIN(1.)
29
30  CALL phys_state_var_init()
31
32  rlat(1:klon_omp)=latitude_deg(1:klon_omp)
33  rlon(1:klon_omp)=longitude_deg(1:klon_omp)
34
35
36  ! Here you could create an initial condition for the physics
37  ! ...
38  ! ... fill in the fields...
39  ! ...
40  ! ... and create a "startphy.nc" file
41      CALL phyredem ("startphy.nc")
42
43  END SUBROUTINE iniaqua
44
45END MODULE phyaqua_mod
Note: See TracBrowser for help on using the repository browser.