Line data Source code
1 : !-----------------------------------------------------------------------
2 : ! Stub version
3 : !
4 : !-----------------------------------------------------------------------
5 :
6 : module mo_aurora
7 :
8 : use shr_kind_mod, only: r8 => shr_kind_r8
9 : use ppgrid, only: pver,pcols
10 :
11 : implicit none
12 :
13 : interface aurora
14 : module procedure aurora_prod
15 : module procedure aurora_hrate
16 : end interface aurora
17 :
18 : contains
19 :
20 :
21 : !----------------------------------------------------------------------
22 : !----------------------------------------------------------------------
23 0 : subroutine aurora_register
24 :
25 0 : endsubroutine aurora_register
26 :
27 : !----------------------------------------------------------------------
28 : !----------------------------------------------------------------------
29 0 : subroutine aurora_inti(pbuf2d)
30 : use physics_buffer, only: physics_buffer_desc
31 : type(physics_buffer_desc), pointer :: pbuf2d(:,:)
32 0 : end subroutine aurora_inti
33 :
34 : !----------------------------------------------------------------------
35 : !----------------------------------------------------------------------
36 0 : subroutine aurora_timestep_init
37 :
38 0 : end subroutine aurora_timestep_init
39 :
40 : !----------------------------------------------------------------------
41 : !----------------------------------------------------------------------
42 0 : subroutine aurora_prod( tn, o2, o1, mbar, rlats, &
43 : qo2p, qop, qn2p, qnp, pmid, &
44 : lchnk, calday, ncol, rlons, pbuf )
45 :
46 : use physics_buffer,only: physics_buffer_desc
47 :
48 : !-----------------------------------------------------------------------
49 : ! ... dummy arguments
50 : !-----------------------------------------------------------------------
51 : integer, intent(in) :: &
52 : ncol, & ! column count
53 : lchnk ! chunk index
54 : real(r8), intent(in) :: &
55 : calday ! calendar day of year
56 : real(r8), intent(in) :: &
57 : tn(pcols,pver), & ! neutral gas temperature (K)
58 : o2(ncol,pver), & ! O2 concentration (kg/kg)
59 : o1(ncol,pver), & ! O concentration (kg/kg)
60 : mbar(ncol,pver) ! mean molecular weight (g/mole)
61 : real(r8), intent(in) :: &
62 : pmid(pcols,pver) ! midpoint pressure (Pa)
63 : real(r8), intent(in) :: &
64 : rlats(ncol), & ! column latitudes (radians)
65 : rlons(ncol)
66 : real(r8), intent(out) :: &
67 : qo2p(ncol,pver), & ! o2+ production
68 : qop(ncol,pver), & ! o+ production
69 : qn2p(ncol,pver), & ! n2+ production
70 : qnp(ncol,pver) ! n+ production
71 :
72 : type(physics_buffer_desc),pointer :: pbuf(:)
73 :
74 0 : end subroutine aurora_prod
75 :
76 : !----------------------------------------------------------------------
77 : !----------------------------------------------------------------------
78 0 : subroutine aurora_hrate( tn, mbar, rlats, &
79 : aur_hrate, cpair, pmid, lchnk, calday, &
80 : ncol, rlons, pbuf )
81 0 : use physics_buffer,only: physics_buffer_desc
82 : !-----------------------------------------------------------------------
83 : ! ... dummy arguments
84 : !-----------------------------------------------------------------------
85 : integer, intent(in) :: &
86 : ncol, & ! column count
87 : lchnk ! chunk index
88 : real(r8), intent(in) :: &
89 : calday ! calendar day of year
90 : real(r8), intent(in) :: &
91 : tn(pcols,pver), & ! neutral gas temperature (K)
92 : mbar(ncol,pver) ! mean molecular weight (g/mole)
93 : real(r8), intent(in) :: &
94 : cpair(ncol,pver) ! specific heat capacity (J/K/kg)
95 : real(r8), intent(in) :: &
96 : pmid(pcols,pver) ! midpoint pressure (Pa)
97 : real(r8), intent(in) :: &
98 : rlats(ncol), & ! column latitudes (radians)
99 : rlons(ncol)
100 : real(r8), intent(out) :: &
101 : aur_hrate(ncol,pver) ! auroral heating rate
102 : type(physics_buffer_desc),pointer :: pbuf(:)
103 :
104 0 : end subroutine aurora_hrate
105 :
106 : end module mo_aurora
|