SCALE-RM
Functions/Subroutines | Variables
scale_atmos_phy_ch_rn222 Module Reference

module atmosphere / physics / chemistry / RN222 More...

Functions/Subroutines

subroutine, public atmos_phy_ch_rn222_setup
 Setup. More...
 
subroutine, public atmos_phy_ch_rn222_tendency (KA, KS, KE, IA, IS, IE, JA, JS, JE, QA_CH, DENS, QTRC, RHOQ_t)
 Chemistry Microphysics. More...
 

Variables

integer, public atmos_phy_ch_rn222_ntracers = QA_CH
 
character(len=h_short), dimension(qa_ch), public atmos_phy_ch_rn222_name = (/ "RN222" /)
 
character(len=h_mid), dimension(qa_ch), public atmos_phy_ch_rn222_desc = (/ "Ratio of Rn222 to total mass" /)
 
character(len=h_short), dimension(qa_ch), public atmos_phy_ch_rn222_unit = (/ "Bq/kg" /)
 

Detailed Description

module atmosphere / physics / chemistry / RN222

Description
Component for rn222 tracer
Author
Team SCALE
NAMELIST
  • PARAM_ATMOS_PHY_CH_RN222
    nametypedefault valuecomment
    ATMOS_PHY_CH_RN222_HALF_LIFE real(RP) 3.30048E+5_RP

History Output
No history output

Function/Subroutine Documentation

◆ atmos_phy_ch_rn222_setup()

subroutine, public scale_atmos_phy_ch_rn222::atmos_phy_ch_rn222_setup ( )

Setup.

Definition at line 59 of file scale_atmos_phy_ch_rn222.F90.

References scale_io::io_fid_conf, and scale_prc::prc_abort().

Referenced by mod_atmos_phy_ch_driver::atmos_phy_ch_driver_setup().

59  use scale_prc, only: &
60  prc_abort
61  implicit none
62 
63  real(RP) :: atmos_phy_ch_rn222_half_life = 3.30048e+5_rp
64 
65  namelist / param_atmos_phy_ch_rn222 / &
66  atmos_phy_ch_rn222_half_life
67 
68  integer :: ierr
69  !---------------------------------------------------------------------------
70 
71  log_newline
72  log_info("ATMOS_PHY_CH_rn222_setup",*) 'Setup'
73  log_info("ATMOS_PHY_CH_rn222_setup",*) 'rn222 process'
74 
75  !--- read namelist
76  rewind(io_fid_conf)
77  read(io_fid_conf,nml=param_atmos_phy_ch_rn222,iostat=ierr)
78  if( ierr < 0 ) then !--- missing
79  log_info("ATMOS_PHY_CH_rn222_setup",*) 'Not found namelist. Default used.'
80  elseif( ierr > 0 ) then !--- fatal error
81  log_error("ATMOS_PHY_CH_rn222_setup",*) 'Not appropriate names in namelist PARAM_ATMOS_PHY_CH_RN222. Check!'
82  call prc_abort
83  endif
84  log_nml(param_atmos_phy_ch_rn222)
85 
86  atmos_phy_ch_rn222_decay_ratio = log(2.0_rp) / atmos_phy_ch_rn222_half_life
87 
88  log_newline
89  log_info("ATMOS_PHY_CH_rn222_setup",*) 'Characteristics of Rn222'
90  log_info_cont('(A,E16.6)') 'Half life [s] : ', atmos_phy_ch_rn222_half_life
91  log_info_cont('(A,E16.6)') 'Decay ratio [1/s] : ', atmos_phy_ch_rn222_decay_ratio
92 
93  return
integer, public io_fid_conf
Config file ID.
Definition: scale_io.F90:55
module PROCESS
Definition: scale_prc.F90:11
subroutine, public prc_abort
Abort Process.
Definition: scale_prc.F90:338
Here is the call graph for this function:
Here is the caller graph for this function:

◆ atmos_phy_ch_rn222_tendency()

subroutine, public scale_atmos_phy_ch_rn222::atmos_phy_ch_rn222_tendency ( integer, intent(in)  KA,
integer, intent(in)  KS,
integer, intent(in)  KE,
integer, intent(in)  IA,
integer, intent(in)  IS,
integer, intent(in)  IE,
integer, intent(in)  JA,
integer, intent(in)  JS,
integer, intent(in)  JE,
integer, intent(in)  QA_CH,
real(rp), dimension (ka,ia,ja), intent(in)  DENS,
real(rp), dimension (ka,ia,ja,qa_ch), intent(in)  QTRC,
real(rp), dimension(ka,ia,ja,qa_ch), intent(inout)  RHOQ_t 
)

Chemistry Microphysics.

Definition at line 106 of file scale_atmos_phy_ch_rn222.F90.

Referenced by mod_atmos_phy_ch_driver::atmos_phy_ch_driver_calc_tendency().

106  implicit none
107 
108  integer, intent(in) :: ka, ks, ke
109  integer, intent(in) :: ia, is, ie
110  integer, intent(in) :: ja, js, je
111  integer, intent(in) :: qa_ch
112  real(RP), intent(in) :: dens (ka,ia,ja)
113  real(RP), intent(in) :: qtrc (ka,ia,ja,qa_ch)
114  real(RP), intent(inout) :: rhoq_t(ka,ia,ja,qa_ch)
115 
116  integer :: k, i, j
117  !---------------------------------------------------------------------------
118 
119  log_progress(*) 'atmosphere / physics / chemistry / Rn222'
120 
121  !--- Decay based on half life
122  do j = js, je
123  do i = is, ie
124  do k = ks, ke
125  rhoq_t(k,i,j,i_ch_rn222) = rhoq_t(k,i,j,i_ch_rn222) &
126  - dens(k,i,j) * qtrc(k,i,j,1) * atmos_phy_ch_rn222_decay_ratio ! [Bq/m3/s]
127  enddo
128  enddo
129  enddo
130 
131  return
integer, public ia
of whole cells: x, local, with HALO
integer, public ja
of whole cells: y, local, with HALO
integer, public is
start point of inner domain: x, local
integer, public ie
end point of inner domain: x, local
integer, public ke
end point of inner domain: z, local
integer, public je
end point of inner domain: y, local
integer, public ks
start point of inner domain: z, local
integer, public js
start point of inner domain: y, local
integer, public ka
of whole cells: z, local, with HALO
Here is the caller graph for this function:

Variable Documentation

◆ atmos_phy_ch_rn222_ntracers

integer, public scale_atmos_phy_ch_rn222::atmos_phy_ch_rn222_ntracers = QA_CH

Definition at line 36 of file scale_atmos_phy_ch_rn222.F90.

Referenced by mod_atmos_phy_ch_driver::atmos_phy_ch_driver_tracer_setup().

36  integer, public :: atmos_phy_ch_rn222_ntracers = qa_ch

◆ atmos_phy_ch_rn222_name

character(len=h_short), dimension(qa_ch), public scale_atmos_phy_ch_rn222::atmos_phy_ch_rn222_name = (/ "RN222" /)

Definition at line 38 of file scale_atmos_phy_ch_rn222.F90.

Referenced by mod_atmos_phy_ch_driver::atmos_phy_ch_driver_tracer_setup().

38  character(len=H_SHORT), public :: atmos_phy_ch_rn222_name(qa_ch) = (/ "RN222" /)

◆ atmos_phy_ch_rn222_desc

character(len=h_mid), dimension(qa_ch), public scale_atmos_phy_ch_rn222::atmos_phy_ch_rn222_desc = (/ "Ratio of Rn222 to total mass" /)

Definition at line 39 of file scale_atmos_phy_ch_rn222.F90.

Referenced by mod_atmos_phy_ch_driver::atmos_phy_ch_driver_tracer_setup().

39  character(len=H_MID) , public :: atmos_phy_ch_rn222_desc(qa_ch) = (/ "Ratio of Rn222 to total mass" /)

◆ atmos_phy_ch_rn222_unit

character(len=h_short), dimension(qa_ch), public scale_atmos_phy_ch_rn222::atmos_phy_ch_rn222_unit = (/ "Bq/kg" /)

Definition at line 40 of file scale_atmos_phy_ch_rn222.F90.

Referenced by mod_atmos_phy_ch_driver::atmos_phy_ch_driver_tracer_setup().

40  character(len=H_SHORT), public :: atmos_phy_ch_rn222_unit(qa_ch) = (/ "Bq/kg" /)