File indexing completed on 2021-05-08 05:11:50 UTC
view on githubraw file Latest commit 9c41af81 on 2021-05-07 16:55:09 UTC
dbd0cb352f Mart*0001 #include "GCHEM_OPTIONS.h"
0002
0003
0004
0005
0006
0007 SUBROUTINE GCHEM_CALC_TENDENCY(
0008 I myTime, myIter, myThid )
0009
0010
0011
0012
0013
0014
0015
847df67610 Jean*0016
dbd0cb352f Mart*0017
0018
0019
0020 IMPLICIT NONE
0021 #include "SIZE.h"
0022 #include "GRID.h"
0023 #include "DYNVARS.h"
0024 #include "EEPARAMS.h"
0025 #include "PARAMS.h"
0026 #include "PTRACERS_SIZE.h"
847df67610 Jean*0027 #include "PTRACERS_PARAMS.h"
0028 #include "PTRACERS_FIELDS.h"
dbd0cb352f Mart*0029 #include "GCHEM.h"
2305125f7e Jean*0030 #ifdef ALLOW_CFC
0031 # include "CFC_SIZE.h"
0032 #endif
0033 #ifdef ALLOW_SPOIL
0034 # include "SPOIL_SIZE.h"
0035 #endif
0036 #include "GCHEM_SIZE.h"
dbd0cb352f Mart*0037 #include "GCHEM_FIELDS.h"
0038
0039
0040
e1fb02e8f0 Jean*0041
0042
dbd0cb352f Mart*0043 _RL myTime
e1fb02e8f0 Jean*0044 INTEGER myIter, myThid
0045
dbd0cb352f Mart*0046
2305125f7e Jean*0047 #ifdef GCHEM_ADD2TR_TENDENCY
dbd0cb352f Mart*0048
0049
2305125f7e Jean*0050
0051
dbd0cb352f Mart*0052
0053
0054 INTEGER i,j
2305125f7e Jean*0055 INTEGER iTr, jTr
e1fb02e8f0 Jean*0056 INTEGER bi,bj,iMin,iMax,jMin,jMax,k
dbd0cb352f Mart*0057
0058
2305125f7e Jean*0059 DO jTr = 1, GCHEM_tendTr_num
dbd0cb352f Mart*0060 DO bj=myByLo(myThid),myByHi(myThid)
0061 DO bi=myBxLo(myThid),myBxHi(myThid)
e1fb02e8f0 Jean*0062 DO k = 1, Nr
0063 DO j = 1-OLy, sNy+OLy
0064 DO i = 1-OLx, sNx+OLx
2305125f7e Jean*0065 gchemTendency(i,j,k,bi,bj,jTr) = 0. _d 0
dbd0cb352f Mart*0066 ENDDO
0067 ENDDO
847df67610 Jean*0068 ENDDO
dbd0cb352f Mart*0069 ENDDO
0070 ENDDO
0071 ENDDO
9c41af81f6 Timo*0072
0073 #ifdef ALLOW_AUTODIFF
0074 IF ( useGCHEM ) THEN
0075 #endif
dbd0cb352f Mart*0076
0077
0078
0079
0080
0081
0082 DO bj=myByLo(myThid),myByHi(myThid)
0083 DO bi=myBxLo(myThid),myBxHi(myThid)
0084
0085 iMin = 1
0086 iMax = sNx
0087 jMin = 1
0088 jMax = sNy
2305125f7e Jean*0089
0090
b47b5cf35c Jean*0091
0092
0093
2305125f7e Jean*0094
b47b5cf35c Jean*0095
0096
0097
0098
847df67610 Jean*0099
b47b5cf35c Jean*0100
0101
0102
d4e767fb31 Jean*0103 #ifdef ALLOW_SPOIL
0104 IF ( useSPOIL ) THEN
0105 CALL SPOIL_CALC_TENDENCY( bi, bj,
0106 I myTime, myIter, myThid )
0107 ENDIF
0108 #endif /* ALLOW_SPOIL */
0109
dbd0cb352f Mart*0110 #ifdef ALLOW_CFC
b47b5cf35c Jean*0111 IF ( useCFC ) THEN
2305125f7e Jean*0112 iTr = CFC_pTr_i1
0113 jTr = iTr - gchem_sepFTr_num
b47b5cf35c Jean*0114 CALL CFC11_FORCING(
2305125f7e Jean*0115 I pTracer (1-OLx,1-OLy,1,bi,bj,iTr),
0116 U gchemTendency(1-OLx,1-OLy,1,bi,bj,jTr),
b47b5cf35c Jean*0117 I bi, bj, iMin, iMax, jMin, jMax,
0118 I myTime, myIter, myThid )
2305125f7e Jean*0119 iTr = CFC_pTr_i1 + 1
0120 jTr = iTr - gchem_sepFTr_num
b47b5cf35c Jean*0121 CALL CFC12_FORCING(
2305125f7e Jean*0122 I pTracer (1-OLx,1-OLy,1,bi,bj,iTr),
0123 U gchemTendency(1-OLx,1-OLy,1,bi,bj,jTr),
b47b5cf35c Jean*0124 I bi, bj, iMin, iMax, jMin, jMax,
0125 I myTime, myIter, myThid )
0126 ENDIF
dbd0cb352f Mart*0127 #endif /* ALLOW_CFC */
b47b5cf35c Jean*0128
dbd0cb352f Mart*0129
0130 ENDDO
0131 ENDDO
9c41af81f6 Timo*0132 #ifdef ALLOW_AUTODIFF
0133 ENDIF
0134 #endif
2305125f7e Jean*0135 #endif /* GCHEM_ADD2TR_TENDENCY */
dbd0cb352f Mart*0136
0137 RETURN
0138 END