LMDZ
Mod_PHY____grd.f90
Go to the documentation of this file.
2 
3 
4 !--------------------------------------------------------------------------+
5 ! Mon 17-Jun-2013 MAR |
6 ! module Mod_PHY____grd contains the characteristics of the grid for |
7 ! MAR PHYsics |
8 ! |
9 ! version 3.p.4.1 created by H. Gallee, Sat 16-Feb-2013 |
10 ! Last Modification by H. Gallee, Mon 17-Jun-2013 |
11 ! |
12 !--------------------------------------------------------------------------+
13 
14 
15  use mod_real
16 
17 
18  IMPLICIT NONE
19 
20 
21 
22  logical :: flagdalloc = .false.
23 
24  integer, SAVE :: yeartu !
25  integer, SAVE :: mon_tu !
26  integer, SAVE :: day_tu !
27  integer, SAVE :: hourtu ! Hour, Universal Time
28  integer, SAVE :: minutu !
29  integer, SAVE :: sec_tu !
30 
31  integer, SAVE :: it_exp ! Nb of iterations since the beginning of the EXPeriment
32  integer, SAVE :: it_run ! Nb of iterations since the beginning of the RUN (job)
33 
34  integer, SAVE :: mxp ! Nb of interior Grid Points, x-Direction
35  integer, SAVE :: mxpp ! Nb of interior Grid Points, x-Direction + 1
36  integer, SAVE :: myp ! Nb of interior Grid Points, y-Direction
37  integer, SAVE :: mypp ! Nb of interior Grid Points, y-Direction + 1
38  integer, SAVE :: ixp1 ! 1er pt en x de la grille dynamique utile dans grille physique
39  integer, SAVE :: jyp1 ! 1er pt en y de la grille dynamique utile dans grille physique
40  integer, SAVE :: kcolp ! Nb of interior Vertical Columns (mxp * myp)
41  integer, SAVE :: mzp ! Nb of Atmospheric Levels
42  integer, SAVE :: mzpp ! Nb of Atmospheric Levels + 1
43 
44  integer, SAVE :: i_x0
45  integer, SAVE :: j_y0
46  integer, SAVE :: ikl0
47 
48  real(kind=real8), SAVE, ALLOCATABLE, dimension(:) :: lat__r ! Latitude [radian]
49  real(kind=real8), SAVE, ALLOCATABLE, dimension(:) :: sinlat ! sin(Latitude) [-]
50  real(kind=real8), SAVE, ALLOCATABLE, dimension(:) :: coslat ! cos(Latitude) [-]
51  real(kind=real8), SAVE, ALLOCATABLE, dimension(:) :: lon__r ! Longitude [radian]
52  real(kind=real8), SAVE, ALLOCATABLE, dimension(:) :: lon__h ! Longitude [hour]
53 
54  real(kind=real8), SAVE :: timetu ! Time [HOURS since 1901-01-15 00:00:00]
55  real(kind=real8), SAVE :: dxhost ! dx
56  real(kind=real8), SAVE :: dx2inv ! 1 / (2 dx)
57  real(kind=real8), SAVE :: dy2inv ! 1 / (2 dy)
58  real(kind=real8), SAVE :: pt__dy ! Model Pressure Top [kPa]
59  real(kind=real8), SAVE, ALLOCATABLE, dimension(:) :: sigma ! Vertical Coord. (normalized Pressure)
60  real(kind=real8), SAVE, ALLOCATABLE, dimension(:) :: sigmi !(sigma(k-1 )+sigma(k )) / 2
61  real(kind=real8), SAVE, ALLOCATABLE, dimension(:) :: dsigma ! sigma(k+1 )-sigma(k )
62  real(kind=real8), SAVE, ALLOCATABLE, dimension(:) :: dsigmi ! sigma(k+1/2)-sigma(k-1/2)
63  real(kind=real8), SAVE, ALLOCATABLE, dimension(:) :: hsigma ! Height of atmospheric layers [magl]
64 
65  integer, SAVE, ALLOCATABLE, dimension(:) :: k1m ! k - 1
66  integer, SAVE, ALLOCATABLE, dimension(:) :: k1p ! k + 1
67  integer, SAVE, ALLOCATABLE, dimension(:) :: k2m ! k - 2
68 
69  integer, SAVE, ALLOCATABLE, dimension(:) :: ii__ap ! WORK point i Coordinate
70  integer, SAVE, ALLOCATABLE, dimension(:) :: jj__ap ! WORK point i Coordinate
71  integer, SAVE, ALLOCATABLE, dimension(:,:) :: ikl_ap ! WORK point vec Coordinate
72 
73 
74 
75  end module mod_phy____grd
integer, save day_tu
real(kind=real8), save timetu
real(kind=real8), save dy2inv
real(kind=real8), dimension(:), allocatable, save dsigma
integer, dimension(:), allocatable, save ii__ap
real(kind=real8), dimension(:), allocatable, save coslat
integer, save mxpp
integer, dimension(:), allocatable, save k1m
real(kind=real8), save dxhost
real(kind=real8), dimension(:), allocatable, save lon__r
real(kind=real8), dimension(:), allocatable, save dsigmi
integer, save j_y0
integer, dimension(:), allocatable, save k2m
real(kind=real8), dimension(:), allocatable, save lat__r
integer, save kcolp
integer, save ikl0
!$Id itapm1 ENDIF!IM on interpole les champs sur les niveaux STD de pression!IM a chaque pas de temps de la physique c!positionnement de l argument logique a false c!pour ne pas recalculer deux fois la meme chose!c!a cet effet un appel a plevel_new a ete deplace c!a la fin de la serie d appels c!la boucle DO nlevSTD a ete internalisee c!dans d ou la creation de cette routine c c!CALL false
Definition: calcul_STDlev.h:26
integer, save it_exp
integer, save jyp1
real(kind=real8), save dx2inv
real(kind=real8), dimension(:), allocatable, save lon__h
integer, dimension(:), allocatable, save k1p
integer, save mon_tu
real(kind=real8), dimension(:), allocatable, save hsigma
integer, save mzpp
real(kind=real8), dimension(:), allocatable, save sinlat
integer, save minutu
integer, save i_x0
integer, save mzp
real(kind=real8), save pt__dy
real(kind=real8), dimension(:), allocatable, save sigma
integer, save ixp1
integer, save it_run
integer, save mxp
real(kind=real8), dimension(:), allocatable, save sigmi
integer, save yeartu
integer, save hourtu
integer, save sec_tu
integer, save myp
integer, dimension(:), allocatable, save jj__ap
integer, save mypp
integer, dimension(:,:), allocatable, save ikl_ap