Welcome,
Guest
. Please
login
or
register
.
Did you miss your
activation email
?
1 Hour
1 Day
1 Week
1 Month
Forever
Login with username, password and session length
Forum Home
Login
Register
PhreeqcUsers Discussion Forum
»
Kinetics and Equilibrium
»
Kinetics
»
Initial concentrations as input to RATES
« previous
next »
Print
Pages: [
1
]
Go Down
Author
Topic: Initial concentrations as input to RATES (Read 750 times)
Alberto
Frequent Contributor
Posts: 14
Initial concentrations as input to RATES
«
on:
July 22, 2015, 05:29:10 AM »
Hello.
I am currently modelling the decay of cyanide in aqueous solution. For that I use a RATES block like:
When there is only cyanide present, the pre-exponential parameter "A" in Arhenius equation:
k(s-1) = A (s-1)*exp (Ea/RT) {Ea= energy of activation, R= gas constant, T = absolute temperature}
Is independent of O2 concentration and of initial concentrations of reactants. So I simply put:
RATES
Cyanide_2_Cyanate
-start
100 IF (MOL("Cyanide-")<0) THEN
101 rate = 0
102 moles = rate*TIME
103 save moles
120 ELSE
121 k = (1.52*10^8)*exp(-10577/TK)
122 rate = k*MOL("Cyanide-")
123 moles = rate*TIME
200 save moles
-end
But if other species, like thiocyanate (SCN-) are present, they can interfere with the main reaction so that reaction rate is dependent of the initial concentration C0. For the system SCN- + CN-, the rate is like (initial concentrations in bold), where α, β, γ are the respective orders of reaction :
k(s-1) = [A*exp(-Ea/RT)]*[C(O2)^α]*[
C0(SCN-)
^β]*[
C0(CN-)
^γ]
So here is the question:
How can I introduce a function that is constant in time and equal to the initial concentration of the selected reactants (in this case cyanide and thiocyanate), to reproduce the above formula?
For more back ground I am attaching an extract from the the paper where I found this formula.
Thank you in advance and best regards.
Logged
dlparkhurst
Top Contributor
Posts: 1130
Re: Initial concentrations as input to RATES
«
Reply #1 on:
July 22, 2015, 02:02:57 PM »
The Basic functions EXISTS, PUT, and GET may be what you need. Here is a short example.
SOLUTION 1
Na 1
Cl 1
USER_PRINT
10 IF (EXISTS(1) = 0) THEN PUT(TOT("Na"), 1)
20 IF (EXISTS(2) = 0) THEN PUT(TOT("Cl"), 2)
30 PRINT "Initial sodium concentration: ", GET(1)
40 PRINT "Initial chloride concentration: ", GET(2)
«
Last Edit: July 22, 2015, 10:19:54 PM by dlparkhurst
»
Logged
Print
Pages: [
1
]
Go Up
« previous
next »
PhreeqcUsers Discussion Forum
»
Kinetics and Equilibrium
»
Kinetics
»
Initial concentrations as input to RATES