8.0
general documentation
Loading...
Searching...
No Matches
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
subroutine fexchem_4 (ns, nr, y, rk, zcsourc, convers_factor, chem)
 fexchem_4
subroutine ssh_jacdchemdc (ns, nr, y, convers_factor, convers_factor_jac, rk, jacc)
 ssh_jacdchemdc
subroutine ssh_lu_decompose (ns, m)
 ssh_lu_decompose
subroutine ssh_lu_solve (ns, m, x)
 ssh_lu_solve
subroutine ssh_dimensions (ns, nr, nr_photolysis)
 ssh_dimensions
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
subroutine ssh_fexchem (ns, nr, nemis, y, rk, zcsourc, convers_factor, chem)
 ssh_fexchem
subroutine hetrxn (ns, nbin_aer, temp, press, icld, lwctmp, wetdiam, granulo, rk156, rk157, rk158, rk159, dsf_aero, ispeclost, wmol, lwcmin)
 hetrxn

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