chem_param__co2.F90 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168
  1. !
  2. #include "tm5.inc"
  3. !
  4. !----------------------------------------------------------------------------
  5. ! TM5 !
  6. !----------------------------------------------------------------------------
  7. !BOP
  8. !
  9. ! !MODULE: chem_param
  10. !
  11. ! !DESCRIPTION:
  12. !
  13. ! definition of the chemistry: #reactions, order of species, etc.
  14. ! parameters needed for chemistry and rate constants
  15. !
  16. !\\
  17. !\\
  18. ! !INTERFACE:
  19. !
  20. module chem_param
  21. !
  22. ! !USES:
  23. !
  24. use binas, only : xmair
  25. !use reaction_data
  26. use deposition_data
  27. implicit none
  28. !
  29. ! !PUBLIC DATA MEMBERS:
  30. !
  31. ! nmark: number of 'marked' tracers
  32. integer, parameter :: nmark = 0
  33. !character(len=8),dimension(nmark) :: marknam = (/ 'test ' /)
  34. !
  35. integer, parameter :: ntrace = 1 ! number of tracers
  36. integer, parameter :: ntracet = 1 ! number of transported tracers
  37. integer, parameter :: ntrace_chem = ntrace-ntracet ! non-transported tracers
  38. integer, parameter :: maxtrace = ntrace + 0 ! total number of tracers
  39. !
  40. ! components numbers
  41. !
  42. integer, parameter :: ico2=1
  43. !
  44. ! additional fields used in chemistry routine alone
  45. ! (more meteo-like files in units different from #/cm3)
  46. !
  47. integer, parameter :: n_extra = 0
  48. integer, parameter :: nstd = 1
  49. integer, dimension(nstd), parameter :: istd = (/ ico2 /)
  50. !
  51. ! species name
  52. !
  53. integer, parameter :: tracer_name_len = 8
  54. Character(len=tracer_name_len), dimension(maxtrace) :: names = (/ 'CO2 ' /)
  55. !
  56. ! molar weights of components
  57. !
  58. real, parameter :: xmh = 1.0079
  59. real, parameter :: xmn = 14.0067
  60. real, parameter :: xmc = 12.01115
  61. real, parameter :: xms = 32.064
  62. real, parameter :: xmo = 15.9994
  63. real, parameter :: xmcl = 35.453
  64. real, parameter :: xmco2 = xmc + xmo*2.0
  65. ! used in wet_depos ...
  66. real, parameter :: xmhno3 = xmh + xmn + xmo*3.0
  67. real,dimension(maxtrace),parameter :: ra = (/ xmair /)
  68. real,dimension(maxtrace),parameter :: fscale = xmair/ra(:)
  69. ! fscale(ntrace): scaling factor for conversion of mixing ratios
  70. ! in kg tracer per kg air to practical mixing ratio units (e.g. ppm)
  71. ! In this version: ratio of molecular weight of tracer to that of air
  72. ! ********************************************************************
  73. ! dummy tracers
  74. ! ********************************************************************
  75. ! dummy indices for tracers not included in this chemistry;
  76. ! comparision of tracer index with this numbers will fail ...
  77. integer, parameter :: iso2 = -999
  78. integer, parameter :: iso4 = -998
  79. integer, parameter :: inh3 = -997
  80. integer, parameter :: ihno3 = -996
  81. integer, parameter :: ino = -995
  82. integer, parameter :: ino2 = -994
  83. integer, parameter :: inox = -993
  84. integer, parameter :: io3 = -992
  85. integer, parameter :: ihno4 = -991
  86. integer, parameter :: ih2o2 = -990
  87. integer, parameter :: ich4 = -989
  88. ! ********************************************************************
  89. ! aerosol
  90. ! ********************************************************************
  91. !real, parameter :: density_ref = 1800.0 ! for 'reference' density calculations
  92. ! ********************************************************************
  93. ! dry deposition
  94. ! ********************************************************************
  95. ! number of tracers on which dry depositions should be applied:
  96. integer, parameter :: ndep = 0
  97. ! tracer indices on which dry depositions should be applied:
  98. integer, parameter :: idep(1) = (/ -999 /)
  99. ! deposition parameters:
  100. real, parameter :: ddep_diffrb(1) = (/ -999.9 /)
  101. real, parameter :: ddep_rsoil (1) = (/ -999.9 /)
  102. real, parameter :: ddep_rwat (1) = (/ -999.9 /)
  103. real, parameter :: ddep_rws (1) = (/ -999.9 /)
  104. real, parameter :: ddep_rsnow (1) = (/ -999.9 /)
  105. real, parameter :: ddep_rmes (1) = (/ -999.9 /)
  106. real, parameter :: ddep_rcut (1) = (/ -999.9 /)
  107. real, parameter :: ddep_diffcf(1) = (/ -999.9 /)
  108. ! some vd fields are copies:
  109. integer, parameter :: vd_ncopy = 0 ! dummy
  110. integer, parameter :: vd_copy_itarget(1) = (/ -999 /)
  111. integer, parameter :: vd_copy_isource(1) = (/ -999 /)
  112. ! number of aerosol bins used for deposition:
  113. integer, parameter :: nrdep = 0
  114. ! aerosol radii used for each bin:
  115. real, parameter :: lur(1) = (/ -999.9 /)
  116. ! ********************************************************************
  117. ! wet deposition
  118. ! ********************************************************************
  119. !
  120. ! nscav : selected species for scavenging
  121. ! nscav_index : index for scavenging:
  122. ! nscav_type : type of scavenging:
  123. ! 0 no scavenging
  124. ! 1 scavenging 100 % solubility assumed
  125. ! 2 scavenging henry solubility assumed
  126. ! 3 scavenging, aerosol removal assumed
  127. ! 4 scavenging, special case for SO2 with aq phase diss.
  128. !
  129. integer, parameter :: nscav = 0
  130. integer, parameter :: nscav_index(1) = (/ -999 /)
  131. !
  132. ! note CMK CFD: wetS accounts for removal of SO2, so nscav_type = 0
  133. ! nh3 is taken out anyhow, since most will be scavenged
  134. ! by acidic falling frops below cloud
  135. integer, parameter :: nscav_type(1) = (/ -999 /)
  136. !
  137. ! !REVISION HISTORY:
  138. ! 9 Sep 2010 - Philippe Le Sager - Added "tracer_name_len"
  139. !
  140. ! !REMARKS:
  141. !
  142. !EOP
  143. !------------------------------------------------------------------------
  144. end module chem_param