9.0
general documentation
Loading...
Searching...
No Matches
rayso.f90 File Reference

Functions/Subroutines

subroutine reftra (pioc, piaero, gasym, gaero, tauc, taua, ref, tra, epsc, dqqv, mui)
 Compute reflexion and transmission.
subroutine rayso (ivertc, k1, kmray, heuray, imer1, albe, qqv, qqqv, qqvinf, zqq, zray, qvray, qlray, fneray, romray, preray, temray, fos, rayst, ncray)
 Compute solar fluxes for both clear and cloudy atmosphere following Lacis and Hansen (1974). The multiple diffusion is taken into account by an addition method and overlapping between water vapor and liquid water with k distribution method. Some improvements from original version concerns:
double precision function rayuoz (zh)
 Computes ozone amount above a given altitude.

Function/Subroutine Documentation

◆ rayso()

subroutine rayso ( integer ivertc,
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) preray,
double precision, dimension(kmx) temray,
double precision fos,
double precision, dimension(kmx) rayst,
double precision, dimension(kmx) ncray )

Compute solar fluxes for both clear and cloudy atmosphere following Lacis and Hansen (1974). The multiple diffusion is taken into account by an addition method and overlapping between water vapor and liquid water with k distribution method. Some improvements from original version concerns:

  • introduction of cloud fraction with hazardous recovering
  • introduction of aerosol diffusion in the same way as for cloud droplets but with specific optical properties for aerosols.
    Parameters
    [in]ivertcindex of vertical profile
    [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 humidity for water vapor
    [in]qlrayspecific humidity for liquid water
    [in]fneraycloud fraction
    [in]romrayair density
    [in]preraypressure
    [in]temraytemperature
    [out]fosglobal downward solar flux at the ground
    [out]raystflux divergence of solar radiation

◆ rayuoz()

double precision function rayuoz ( double precision, intent(in) zh)

Computes ozone amount above a given altitude.

Parameters
[in]zhaltitude

◆ reftra()

subroutine reftra ( double precision, intent(in) pioc,
double precision, intent(in) piaero,
double precision, intent(in) gasym,
double precision, intent(in) gaero,
double precision, intent(in) tauc,
double precision, intent(in) taua,
double precision, intent(inout) ref,
double precision, intent(inout) tra,
double precision, intent(in) epsc,
double precision, intent(in) dqqv,
double precision mui )

Compute reflexion and transmission.

Parameters
[in]piocAlbedo of simple diffusion for cloud (water)
[in]piaeroAlbedo of simple diffusion for aerosol
[in]gasymAsymmetry factor for clouds
[in]gaeroAsymmetry factor for aerosols
[in]taucOptical depth for clouds
[in]tauaOptical depth for aersols
[out]refReflexion
[out]traTransmission
[in]epscclipping threshold
[in]dqqvOptical depth for Water vapor