Chemical kinetics

ReactionEquation

Chemical kinetic reaction system

ReactionSystem(X, S, R, K)

Arguments

  • X : State vector (array of unknowns N x 1)

  • S : stoichiometric coefficients for reactants (array M x N)

  • R : stoichiometric coefficients for products (array M x N)

  • K : reaction rates (array M x 1)

Example

function concentration()

    A0 = 0.25
    rateA = 0.333
    rateB = 0.16

    X= { Unknown(A0), Unknown(0.0) }

    S = [ [1, 0] [0, 1] ] ## stoichiometric coefficients for reactants
    R = [ [0, 1] [1, 0] ] ## stoichiometric coefficients for products
    K = [rateA , rateB] ## reaction rates
    
    return ReactionSystem(X, S, R, K)

end
y = sim(concentration())
### Simple reaction syntax parser

function simpleConcentration()

    A0 = 0.25
    rateA = 0.333
    rateB = 0.16

    A = Unknown(A0)
    B = Unknown(0.0)
    
    reactions = Any[
                     [ :-> A B rateA ]
                     [ :-> B A rateB ]
                   ]

    return parse_reactions(reactions)
end

y = sim(simpleConcentration())
source

parse_reactions

Parses reactions of the form

Any[ :-> a b rate ]
Any[ :→ a b rate  ]
Any[ :⇄ a b rate1 rate2 ]

Arguments

  • V : Vector of reactions

Example

    A0 = 0.25
    rateA = 0.333
    rateB = 0.16

    A = Unknown(A0)
    B = Unknown(0.0)

    reactions = Any[
                     [ :⇄ A B rateA rateB ]
                   ]

    parse_reactions(reactions)
source