source: CONFIG/publications/ICOLMDZORINCA_CO2_Transport_GMD_2023/INCA/src/INCA_PP/reac_flx.F90 @ 6610

Last change on this file since 6610 was 6610, checked in by acosce, 10 months ago

INCA used for ICOLMDZORINCA_CO2_Transport_GMD_2023

File size: 2.3 KB
Line 
1
2#include <inca_define.h>
3
4SUBROUTINE REAC_FLX(base_sol, reaction_rates, invariants, reacflux)
5  ! Sophie SZOPA, LSCE, 2016.
6
7  USE INCA_DIM
8  USE SPECIES_NAMES
9  USE RATE_INDEX_MOD
10  IMPLICIT NONE
11
12  !--------------------------------------------------------------------
13  !     ... Dummy args                                                         
14  !--------------------------------------------------------------------
15  REAL, DIMENSION(PLNPLV,RXNCNT), INTENT(out) :: reacflux
16  REAL, DIMENSION(PLNPLV,RXNCNT), INTENT(in)  ::  reaction_rates
17  REAL, DIMENSION(PLNPLV,NFS), INTENT(in)     :: invariants
18  REAL, DIMENSION(PLNPLV,PCNST), INTENT(in)   ::  base_sol
19
20
21
22  reacflux(:,jN2O) = invariants(:,INDEXM) *  &
23       reaction_rates(:,jN2O)    &
24       * base_sol(:,id_N2O)
25
26  reacflux(:,jMCF) = invariants(:,INDEXM) *  &
27       reaction_rates(:,jMCF)    &
28       * base_sol(:,id_MCF)
29
30  reacflux(:,kCOOH) = invariants(:,INDEXM) *  &
31       reaction_rates(:,kCOOH)    &
32       * base_sol(:,id_CO)   &
33       * invariants(:,inv_OH)
34
35  reacflux(:,kRn222) = invariants(:,INDEXM) *  &
36       reaction_rates(:,kRn222)    &
37       * base_sol(:,id_Rn222)
38
39  reacflux(:,kMCFOH) = invariants(:,INDEXM) *  &
40       reaction_rates(:,kMCFOH)    &
41       * base_sol(:,id_MCF)   &
42       * invariants(:,inv_OH)
43
44  reacflux(:,kBe7) = invariants(:,INDEXM) *  &
45       reaction_rates(:,kBe7)    &
46       * base_sol(:,id_Be7)
47
48  reacflux(:,kN2OO1D2NO) = invariants(:,INDEXM) *  &
49       reaction_rates(:,kN2OO1D2NO)    &
50       * base_sol(:,id_N2O)   &
51       * invariants(:,inv_O1D)
52
53  reacflux(:,kN2OO1DN2) = invariants(:,INDEXM) *  &
54       reaction_rates(:,kN2OO1DN2)    &
55       * base_sol(:,id_N2O)   &
56       * invariants(:,inv_O1D)
57
58  reacflux(:,kCH4OH) = invariants(:,INDEXM) *  &
59       reaction_rates(:,kCH4OH)    &
60       * base_sol(:,id_CH4)   &
61       * invariants(:,inv_OH)
62
63  reacflux(:,kCH4O1DCH3O2) = invariants(:,INDEXM) *  &
64       reaction_rates(:,kCH4O1DCH3O2)    &
65       * base_sol(:,id_CH4)   &
66       * invariants(:,inv_O1D)
67
68  reacflux(:,kCH4O1DH2) = invariants(:,INDEXM) *  &
69       reaction_rates(:,kCH4O1DH2)    &
70       * base_sol(:,id_CH4)   &
71       * invariants(:,inv_O1D)
72
73  reacflux(:,kCH4O1DCH3OH) = invariants(:,INDEXM) *  &
74       reaction_rates(:,kCH4O1DCH3OH)    &
75       * base_sol(:,id_CH4)   &
76       * invariants(:,inv_O1D)
77
78
79END SUBROUTINE REAC_FLX
Note: See TracBrowser for help on using the repository browser.