programmer's documentation
Functions/Subroutines
rayso.f90 File Reference

1D Radiative scheme - Solar flux More...

Functions/Subroutines

subroutine rayso (k1, kmray, heuray, imer1, albe, qqv, qqqv, qqvinf, zqq, zray, qvray, qlray, fneray, romray, aeroso, fos, rayst)
 This program computes solar fluxes for both clear and cloudy atmosphere following Lacis and Hansen, 1974. More...
 
double precision function rayuoz (zh)
 Internal function - Computes ozone concentration for the altitude zh. More...
 
double precision function raysve (y)
 Internal function - Aborption function of the solar radiation by water vapor. More...
 
double precision function raysoz (x)
 Internal function - Aborption function of the solar radiation by ozone. More...
 

Detailed Description

1D Radiative scheme - Solar flux

Function/Subroutine Documentation

subroutine rayso ( integer  k1,
integer  kmray,
double precision  heuray,
integer  imer1,
double precision  albe,
double precision, dimension(kmx+1)  qqv,
double precision, dimension(kmx+1)  qqqv,
double precision  qqvinf,
double precision, dimension(kmx+1)  zqq,
double precision, dimension(kmx)  zray,
double precision, dimension(kmx)  qvray,
double precision, dimension(kmx)  qlray,
double precision, dimension(kmx)  fneray,
double precision, dimension(kmx)  romray,
double precision, dimension(kmx)  aeroso,
double precision  fos,
double precision, dimension(kmx)  rayst 
)

This program computes solar fluxes for both clear and cloudy atmosphere following Lacis and Hansen, 1974.

  • the multiple diffusion is taken into account by adding method and overlapping between water vapor and liquid water with k distribution method Some improvments from original version concerns:
    • introduction of cloud fraction with hazardeous recovering
    • introduction of aerosol diffusion on the same way than cloud droplets but with specific optical properties for aerosols
      Parameters
      [in]k1index for ground level
      [in]kmrayvertical levels number for radiation
      [in]heurayUniversal time (Hour)
      [in]imer1sea index
      [in]albealbedo
      [in]qqvoptical depth for water vapor (0,z)
      [in]qqqvidem for intermediate levels
      [in]qqvinfidem qqv but for altitude above 11000m
      [in]zqqvertical levels
      [in]zrayaltitude (physical mesh)
      [in]qvrayspecific umidity for water vapor
      [in]qlrayspecific humidity for liquid water
      [in]fneraycloud fraction
      [in]romrayair density
      [in]aerosoaerosol concentration in micro-g/m3
      [out]fosglobal downward solar flux at the ground
      [out]raystflux divergence of solar radiation
double precision function rayso::raysoz ( double precision, intent(in)  x)

Internal function - Aborption function of the solar radiation by ozone.

Parameters
[in]xoptical depth for ozone
double precision function rayso::raysve ( double precision, intent(in)  y)

Internal function - Aborption function of the solar radiation by water vapor.

Parameters
[in]yoptical depth for water vapor
double precision function rayso::rayuoz ( double precision, intent(in)  zh)

Internal function - Computes ozone concentration for the altitude zh.

Parameters
[in]zhaltitude