8.0
general documentation
usatch.f90 File Reference

Routines for user defined atmospheric chemical scheme. More...

Functions/Subroutines

subroutine kinetic_4 (nr, rk, temp, xlw, press, azi, att, option_photolysis)
 kinetic_4 More...
 
subroutine fexchem_4 (ns, nr, y, rk, zcsourc, convers_factor, chem)
 fexchem_4 More...
 
subroutine ssh_jacdchemdc (ns, nr, y, convers_factor, convers_factor_jac, rk, jacc)
 ssh_jacdchemdc More...
 
subroutine ssh_lu_decompose (ns, m)
 ssh_lu_decompose More...
 
subroutine ssh_lu_solve (ns, m, x)
 ssh_lu_solve More...
 
subroutine ssh_dimensions (Ns, Nr, Nr_photolysis)
 ssh_dimensions More...
 
subroutine ssh_kinetic (Ns, Nbin_aer, nr, IHETER, ICLD, rk, temp, xlw, Press, azi, att, lwctmp, granulo, WetDiam, dsf_aero, ispeclost, Wmol, LWCmin, option_photolysis)
 ssh_kinetic More...
 
subroutine ssh_fexchem (NS, Nr, nemis, y, rk, ZCsourc, convers_factor, chem)
 ssh_fexchem More...
 
subroutine hetrxn (Ns, Nbin_aer, temp, press, ICLD, lwctmp, WetDiam, granulo, rk156, rk157, rk158, rk159, dsf_aero, ispeclost, Wmol, LWCmin)
 hetrxn More...
 

Detailed Description

Routines for user defined atmospheric chemical scheme.

Remarks
These routines should be generated by SPACK

See CEREA: http://cerea.enpc.fr/polyphemus https://sshaerosol.wordpress.com/ https://github.com/sshaerosol/ssh-aerosol/

Function/Subroutine Documentation

◆ fexchem_4()

subroutine fexchem_4 ( integer  ns,
integer  nr,
double precision, dimension(ns)  y,
double precision, dimension(nr)  rk,
double precision, dimension(ns)  zcsourc,
double precision, dimension(ns)  convers_factor,
double precision, dimension(ns)  chem 
)

fexchem_4

Computes the chemical production terms

Parameters
[in]nrtotal number of chemical reactions
[in]nstotal number of chemical species
[in]yconcentrations vector
[in]rkkinetic rates
[in]zcsourcsource term
[in]convers_factorconversion factors
[out]chemchemical production terms for every species

◆ hetrxn()

subroutine hetrxn ( integer  Ns,
integer  Nbin_aer,
double precision  temp,
double precision  press,
integer  ICLD,
double precision  lwctmp,
double precision, dimension(nbin_aer)  WetDiam,
double precision, dimension(nbin_aer)  granulo,
double precision  rk156,
double precision  rk157,
double precision  rk158,
double precision  rk159,
double precision, dimension(nbin_aer)  dsf_aero,
integer, dimension(4)  ispeclost,
double precision, dimension(ns)  Wmol,
double precision  LWCmin 
)

hetrxn

Dummy function for compatibility with SPACK

◆ kinetic_4()

subroutine kinetic_4 ( integer  nr,
double precision, dimension(nr)  rk,
double precision  temp,
double precision  xlw,
double precision  press,
double precision  azi,
double precision  att,
integer  option_photolysis 
)

kinetic_4

Computation of kinetic rates for atmospheric chemistry

Parameters
[in]nrtotal number of chemical reactions
[in]option_photolysisflag to activate or not photolysis reactions
[in]azisolar zenith angle
[in]attatmospheric attenuation variable
[in]temptemperature
[in]presspressure
[in]xlwwater massic fraction
[out]rk(nr)kinetic rates

◆ ssh_dimensions()

subroutine ssh_dimensions ( integer  Ns,
integer  Nr,
integer  Nr_photolysis 
)

ssh_dimensions

Rountine provided by SPACK. Return number of species / reactions

◆ ssh_fexchem()

subroutine ssh_fexchem ( integer  NS,
integer  Nr,
integer  nemis,
double precision, dimension(ns)  y,
double precision, dimension(nr)  rk,
double precision, dimension(ns)  ZCsourc,
double precision, dimension(ns)  convers_factor,
double precision, dimension(ns)  chem 
)

ssh_fexchem

Routine provided by SPACK. Computes the chemical production terms

Parameters
[in]nrtotal number of chemical reactions
[in]nstotal number of chemical species
[in]nemisflag to activate source terms
[in]yconcentrations vector
[in]rkkinetic rates
[in]zcsourcsource term
[in]convers_factorconversion factors
[out]chemchemical production terms for every species

◆ ssh_jacdchemdc()

subroutine ssh_jacdchemdc ( integer  ns,
integer  nr,
double precision, dimension(ns)  y,
double precision, dimension(ns)  convers_factor,
double precision, dimension(ns,ns)  convers_factor_jac,
double precision, dimension(nr)  rk,
double precision, dimension(ns,ns)  jacc 
)

ssh_jacdchemdc

Routine provided by SPACK. Computes the Jacobian matrix for chemistry

Parameters
[in]nrtotal number of chemical reactions
[in]nstotal number of chemical species
[in]yconcentrations vector
[in]convers_factorconversion factors of mug/m3 to molecules/cm3
[in]convers_factor_jacconversion factors for the Jacobian matrix (Wmol(i)/Wmol(j))
[in]rkkinetic rates
[out]jaccJacobian matrix

◆ ssh_kinetic()

subroutine ssh_kinetic ( integer  Ns,
integer  Nbin_aer,
integer  nr,
integer  IHETER,
integer  ICLD,
double precision, dimension(nr)  rk,
double precision  temp,
double precision  xlw,
double precision  Press,
double precision  azi,
double precision  att,
double precision  lwctmp,
double precision, dimension(nbin_aer)  granulo,
double precision, dimension(nbin_aer)  WetDiam,
double precision, dimension(nbin_aer)  dsf_aero,
integer, dimension(4)  ispeclost,
double precision, dimension(ns)  Wmol,
double precision  LWCmin,
integer  option_photolysis 
)

ssh_kinetic

Routine provided by SPACK. Computes kinetic rates for the gas-phase.

◆ ssh_lu_decompose()

subroutine ssh_lu_decompose ( integer  ns,
double precision, dimension(ns,ns)  m 
)

ssh_lu_decompose

Routine provided by SPACK. Computes LU factorization of matrix m

Parameters
[in]nsmatrix row number from the chemical species number
[in,out]mon entry, an invertible matrix. On exit, an LU factorization of m

◆ ssh_lu_solve()

subroutine ssh_lu_solve ( integer  ns,
double precision, dimension(ns,ns)  m,
double precision, dimension(ns)  x 
)

ssh_lu_solve

Resolution of MY=X where M is an LU factorization computed by lu_decompose. Routine provided by SPACK.

Parameters
[in]nsmatrix row number from the chemical species number
[in]man LU factorization computed by lu_decompose
[in,out]xon entry, the right-hand side of the equation