1 | module conc_mod |
---|
2 | |
---|
3 | implicit none |
---|
4 | |
---|
5 | real,save,allocatable :: mmean(:,:) ! mean molecular mass of the atmosphere |
---|
6 | real,save,allocatable :: Akknew(:,:) ! thermal conductivity cofficient |
---|
7 | real,save,allocatable :: cpnew(:,:) ! specicic heat |
---|
8 | real,save,allocatable :: rnew(:,:) ! specific gas constant |
---|
9 | |
---|
10 | !$OMP THREADPRIVATE(mmean,Akknew,cpnew,rnew) |
---|
11 | |
---|
12 | contains |
---|
13 | |
---|
14 | subroutine ini_conc_mod(ngrid,nlayer) |
---|
15 | |
---|
16 | implicit none |
---|
17 | integer,intent(in) :: ngrid ! number of atmospheric columns |
---|
18 | integer,intent(in) :: nlayer ! number of atmospheric levels |
---|
19 | |
---|
20 | allocate(mmean(ngrid,nlayer)) |
---|
21 | allocate(Akknew(ngrid,nlayer)) |
---|
22 | allocate(cpnew(ngrid,nlayer)) |
---|
23 | allocate(rnew(ngrid,nlayer)) |
---|
24 | |
---|
25 | end subroutine ini_conc_mod |
---|
26 | |
---|
27 | |
---|
28 | subroutine end_conc_mod |
---|
29 | |
---|
30 | implicit none |
---|
31 | |
---|
32 | if (allocated(mmean)) deallocate(mmean) |
---|
33 | if (allocated(Akknew)) deallocate(Akknew) |
---|
34 | if (allocated(cpnew)) deallocate(cpnew) |
---|
35 | if (allocated(rnew)) deallocate(rnew) |
---|
36 | |
---|
37 | end subroutine end_conc_mod |
---|
38 | |
---|
39 | end module conc_mod |
---|