Derivation of differential equations describing evolution of spin concentrations










1. Reaction rates and partial conversion rates


3. Net conversion rates


4. Expression in terms of spin (monomer) concentrations


5. Final result







Back to Contents






1. Reaction rates and partial conversion rates

clean up workspace





Write properly balanced reactions equations:


Transition A:

(1)          (2)


Constants: k_1_A (forward), k_2_A (reverse).



Write reaction rates



We distinguish reaction rates (Rate, elementary reaction acts per unit time) and conversion rates (dc/dt, number of moles of the specific species consumed/produced per unit time). Conversion rates, dc/dt, for species are related to reaction rates, Rate, through molecularity coefficients.


To compute conversion rates, we need to distinguish partial conversion rates from net (overall) conversion rates. The net conversion rate is actual rate of change in measured concentration of the species. Partial conversion rate is a conversion rate of the species observed along the specific branch of the reaction mechanism. Summing partial conversion rates of the species one obtains the net conversion rate for this species.



Isomerization (forward transition on A: 1_A)


a reaction rate

eq1_1a:= Rate_1_A = k_1_A*Ra

Rate_1_A = Ra*k_1_A

a partial conversion rate of Ra: one reaction act uses one molecule of Ra

eq1_1b:= dcRadt_1_A = Rate_1_A * (-1)

dcRadt_1_A = -Rate_1_A

The final form

eq1_1c:= eq1_1b | eq1_1a

dcRadt_1_A = -Ra*k_1_A

a partial conversion rate of Rb: one reaction makes one molecule of Rb

eq1_1d:= dcRbdt_1_A = Rate_1_A * (+1)

dcRbdt_1_A = Rate_1_A

The final form

eq1_1e:= eq1_1d | eq1_1a

dcRbdt_1_A = Ra*k_1_A




Isomerization (reverse transition on A: 2_A)


a reaction rate

eq1_2a:= Rate_2_A = k_2_A*Rb

Rate_2_A = Rb*k_2_A

a partial conversion rate of Ra: one reaction act makes one molecule of Ra

eq1_2b:= dcRadt_2_A = Rate_2_A * (+1)

dcRadt_2_A = Rate_2_A

The final form

eq1_2c:= eq1_2b | eq1_2a

dcRadt_2_A = Rb*k_2_A

a partial conversion rate of Rb: one reaction act uses one molecule of Ra

eq1_2d:= dcRbdt_2_A = Rate_2_A * (-1)

dcRbdt_2_A = -Rate_2_A

The final form

eq1_2e:= eq1_2d | eq1_2a

dcRbdt_2_A = -Rb*k_2_A





Back to Contents







3. Net conversion rates


To define evolution of the species we need to compute concentrations  as a function of time. To this end, we will write differential equations for conversion rates of all species.


In a reversible process both forward and reverse reaction occur simultaneously. Thus, the net conversion rate of the species is a difference between partial conversion rates resulting from forward and reverse reactions, summed along all branches.



Net conversion rate of  Ra


Sum all pertaining partial conversion rates

eq3_1a:= dcRadt_N = dcRadt_1_A + dcRadt_2_A

dcRadt_N = dcRadt_1_A + dcRadt_2_A


Substitute using expressions for partial conversion rates


eq3_1b:= eq3_1a | eq1_1c | eq1_2c

dcRadt_1_A = -Ra*k_1_A
dcRadt_2_A = Rb*k_2_A
dcRadt_N = Rb*k_2_A - Ra*k_1_A




Net conversion rate of  Rb


Sum all pertaining partial conversion rates

eq3_2a:= dcRbdt_N = dcRbdt_1_A + dcRbdt_2_A

dcRbdt_N = dcRbdt_1_A + dcRbdt_2_A


Substitute using expressions for partial conversion rates


eq3_2b:= eq3_2a | eq1_1e | eq1_2e

dcRbdt_1_A = Ra*k_1_A
dcRbdt_2_A = -Rb*k_2_A
dcRbdt_N = Ra*k_1_A - Rb*k_2_A






4. Expression in terms of spin (monomer) concentrations


not needed here because we do not have oligomerization reactions: one spin in Ra is converted to one spin in Rb.






5. Final result


Summarize the derivation results


dcRadt_N = Rb*k_2_A - Ra*k_1_A


dcRbdt_N = Ra*k_1_A - Rb*k_2_A





Assign order to species

eq5_1a:= Ra    = C1;
eq5_1b:= Rb    = C2;

Ra = C1
Rb = C2




Same order for net rates

eq5_2a:= dcRadt_N  = dC1dt;
eq5_2b:= dcRbdt_N  = dC2dt;

dcRadt_N = dC1dt
dcRbdt_N = dC2dt



Restate the equations in terms of numbered species

eq5_3a:= eq3_1b | eq5_1a | eq5_1b |  eq5_2a | eq5_2b

dC1dt = C2*k_2_A - C1*k_1_A

eq5_3b:= eq3_2b | eq5_1a | eq5_1b |  eq5_2a | eq5_2b

dC2dt = C1*k_1_A - C2*k_2_A




Prepare results for transfer to MATLAB

To avoid typing errors when transfering derived K matrix to MATLAB we type it in here and then directly test against the derivation result from above. After that the K matrix may be transfered to MATLAB by cut-and-paste of the MuPad output.



Enter the K-matrix looking at the above results (collect terms at correspondingly numbered species).


Simple rules that allow catching mistakes in K matrix derivation:


   (1) a sum of each column should be zero (so each constant must appear with both positive and negative sign), and 


   (2) each row has to have complete pairs of constants (i.e., if k12

    appears there must be k21 in the same row with an opposite sign and so on).

[ -k_1_A,    k_2_A ],
[  k_1_A,   -k_2_A ]

matrix([[-k_1_A, k_2_A], [k_1_A, -k_2_A]])



Create a column vector containing concentrations of species in numbered notation

P:=matrix(2,1,[C1, C2])

matrix([[C1], [C2]])



Check correctness of the entered K matrix by multiplying with P and comparing to the above equations:


Multiply K and P:

dCdt_manual_input:= K*P

matrix([[C2*k_2_A - C1*k_1_A], [C1*k_1_A - C2*k_2_A]])



Collect right-hand-side parts of equations

dCdt_mupad:=matrix(2,1,[ rhs(eq5_3a), rhs(eq5_3b)])

matrix([[C2*k_2_A - C1*k_1_A], [C1*k_1_A - C2*k_2_A]])



Compare the derivation result to manual input


matrix([[C2*k_2_A - C1*k_1_A], [C1*k_1_A - C2*k_2_A]]) = matrix([[C2*k_2_A - C1*k_1_A], [C1*k_1_A - C2*k_2_A]])


=> If TRUE ---the typed K-matrix is correct.




Use this K-matrix  (copy-paste output to MATLAB)


matrix([[-k_1_A, k_2_A], [k_1_A, -k_2_A]])





Back to Contents








I derived differential equations governing spin populations. The K matrix has been prepared for transferring to MATLAB.




Back to Contents