1 | MODULE physiq_limit_variables_mod |
---|
2 | ! L. Fita, November 2013. Making them accessible. Since wrfinput/wrfbdy/wrfrst/wrflow files are been used |
---|
3 | |
---|
4 | IMPLICIT NONE |
---|
5 | |
---|
6 | REAL, ALLOCATABLE, DIMENSION(:), SAVE :: restart_runoff |
---|
7 | !$OMP THREADPRIVATE(restart_runoff) |
---|
8 | REAL, ALLOCATABLE, DIMENSION(:), SAVE :: qsol_rst |
---|
9 | !$OMP THREADPRIVATE(qsol_rst) |
---|
10 | REAL, ALLOCATABLE, DIMENSION(:), SAVE :: fder_rst |
---|
11 | !$OMP THREADPRIVATE(fder_rst) |
---|
12 | REAL, ALLOCATABLE, DIMENSION(:,:), SAVE :: snow_rst |
---|
13 | !$OMP THREADPRIVATE(snow_rst) |
---|
14 | REAL, ALLOCATABLE, DIMENSION(:,:), SAVE :: qsurf_rst |
---|
15 | !$OMP THREADPRIVATE(qsurf_rst) |
---|
16 | REAL, ALLOCATABLE, DIMENSION(:,:), SAVE :: evap_rst |
---|
17 | !$OMP THREADPRIVATE(evap_rst) |
---|
18 | REAL, ALLOCATABLE, DIMENSION(:,:), SAVE :: rugos_rst |
---|
19 | !$OMP THREADPRIVATE(rugos_rst) |
---|
20 | REAL, ALLOCATABLE, DIMENSION(:,:), SAVE :: agesno_rst |
---|
21 | !$OMP THREADPRIVATE(agesno_rst) |
---|
22 | REAL, ALLOCATABLE, DIMENSION(:,:,:), SAVE :: ftsoil_rst |
---|
23 | !$OMP THREADPRIVATE(ftsoil_rst) |
---|
24 | |
---|
25 | CONTAINS |
---|
26 | |
---|
27 | SUBROUTINE vars_limit() |
---|
28 | ! Do not do nothing. |
---|
29 | |
---|
30 | IMPLICIT NONE |
---|
31 | |
---|
32 | REAL, ALLOCATABLE, DIMENSION(:), SAVE :: restart_runoff |
---|
33 | !$OMP THREADPRIVATE(restart_runoff) |
---|
34 | REAL, ALLOCATABLE, DIMENSION(:), SAVE :: qsol_rst |
---|
35 | !$OMP THREADPRIVATE(qsol_rst) |
---|
36 | REAL, ALLOCATABLE, DIMENSION(:), SAVE :: fder_rst |
---|
37 | !$OMP THREADPRIVATE(fder_rst) |
---|
38 | REAL, ALLOCATABLE, DIMENSION(:,:), SAVE :: snow_rst |
---|
39 | !$OMP THREADPRIVATE(snow_rst) |
---|
40 | REAL, ALLOCATABLE, DIMENSION(:,:), SAVE :: qsurf_rst |
---|
41 | !$OMP THREADPRIVATE(qsurf_rst) |
---|
42 | REAL, ALLOCATABLE, DIMENSION(:,:), SAVE :: evap_rst |
---|
43 | !$OMP THREADPRIVATE(evap_rst) |
---|
44 | REAL, ALLOCATABLE, DIMENSION(:,:), SAVE :: rugos_rst |
---|
45 | !$OMP THREADPRIVATE(rugos_rst) |
---|
46 | REAL, ALLOCATABLE, DIMENSION(:,:), SAVE :: agesno_rst |
---|
47 | !$OMP THREADPRIVATE(agesno_rst) |
---|
48 | REAL, ALLOCATABLE, DIMENSION(:,:,:), SAVE :: ftsoil_rst |
---|
49 | !$OMP THREADPRIVATE(ftsoil_rst) |
---|
50 | |
---|
51 | END SUBROUTINE |
---|
52 | |
---|
53 | SUBROUTINE vars_limit_init(klon) |
---|
54 | ! Subroutine to initialize limit variables |
---|
55 | |
---|
56 | USE mod_grid_phy_lmdz, ONLY: klon_glo |
---|
57 | USE indice_sol_mod |
---|
58 | |
---|
59 | IMPLICIT NONE |
---|
60 | |
---|
61 | INCLUDE "dimensions.h" |
---|
62 | INCLUDE "dimsoil.h" |
---|
63 | |
---|
64 | INTEGER, INTENT(IN) :: klon |
---|
65 | |
---|
66 | !! IF (ALLOCATED(restart_runoff)) DEALLOCATE(restart_runoff) |
---|
67 | ALLOCATE(restart_runoff(klon)) |
---|
68 | |
---|
69 | !! IF (ALLOCATED(qsol_rst)) DEALLOCATE(qsol_rst) |
---|
70 | ALLOCATE(qsol_rst(klon)) |
---|
71 | !! IF (ALLOCATED(fder_rst)) DEALLOCATE(fder_rst) |
---|
72 | ALLOCATE(fder_rst(klon)) |
---|
73 | !! IF (ALLOCATED(snow_rst)) DEALLOCATE(snow_rst) |
---|
74 | ALLOCATE(snow_rst(klon, nbsrf)) |
---|
75 | !! IF (ALLOCATED(qsurf_rst)) DEALLOCATE(qsurf_rst) |
---|
76 | ALLOCATE(qsurf_rst(klon, nbsrf)) |
---|
77 | !! IF (ALLOCATED(evap_rst)) DEALLOCATE(evap_rst) |
---|
78 | ALLOCATE(evap_rst(klon, nbsrf)) |
---|
79 | !! IF (ALLOCATED(rugos_rst)) DEALLOCATE(rugos_rst) |
---|
80 | ALLOCATE(rugos_rst(klon, nbsrf)) |
---|
81 | !! IF (ALLOCATED(agesno_rst)) DEALLOCATE(agesno_rst) |
---|
82 | ALLOCATE(agesno_rst(klon, nbsrf)) |
---|
83 | !! IF (ALLOCATED(ftsoil_rst)) DEALLOCATE(ftsoil_rst) |
---|
84 | ALLOCATE(ftsoil_rst(klon, nsoilmx, nbsrf)) |
---|
85 | |
---|
86 | PRINT *,' Lluis in var_limit_init 315 qsurf_rst: ',qsurf_rst(315,:), & |
---|
87 | 'qsol_rst: ',qsol_rst(315) |
---|
88 | |
---|
89 | RETURN |
---|
90 | |
---|
91 | END SUBROUTINE vars_limit_init |
---|
92 | |
---|
93 | END MODULE physiq_limit_variables_mod |
---|