วันพฤหัสบดีที่ 14 พฤษภาคม พ.ศ. 2563

บทที่ 9 ตัวอย่างปฏิกิริยาเคมี

บทที่ 9
ตัวอย่างปฏิกิริยาเคมี

9.1 ส่วนนำ
            เอกสารนี้ออกแบบให้คุ้นเคยกับการแก้ปัญหา โดยการใช้ ขั้นตอนวิธี  ODE ในไซแลบสำหรับสมการปฏิกิริยาทางเคมี
9.2 ระบบปฏิกิริยาเคมี (chemical Reaction Systems)
            มี ODE หลายอย่างที่น่าสนใจสามารถที่จะสร้างขึ้นมมาเพื่ออธิบายการวิวัฒนาการทางปฏิกิริยาเคมี สมมุติว่ามีสปีซีทางเคมี 4 อย่าง A, B, C และ D.  เหล่านี้กำหนดเป็น O2, H2, OH, H2O ฯลฯ.  สามารถที่จะเขียน ปฏิกิริยาเคมีหนึ่งระหว่าสปีชีเหล่านี้ ผ่านทางสมการปฏิกิริยาเคมี
            A + B  k1  C + D                                                                            (9.1)  
            ปฏิกิริยานี้จะไม่เกิดขึ้นที่ขณะหนึ่งขณะใด แต่จะเข้าสู่อัตราที่เป็นสัดส่วนกับความเข้มข้นของสารรีแอคแตนซ์ A และ B ด้วยอัตราคงที่k1. สมมุติว่ามีสมการที่ 2 คือ
A + A + C k2 B                                                                                 (9.2)
            และสมมุติว่าสมการปฏิกิริยาเคมีทั้งสองเหล่านี้ ระบุถึงปฏิกิริยาที่เกิดขึ้นในระบบได้ครบถ้วน้ทำให้สามารถสร้างสมการวิวัฒนาการสำหรับมุ่งเน้นสปีซีทางเคมีดังต่อไปนี้

  = k1[A][B] 2k2[A][A][C]
            = k1[A][B] + k2[A][A][C]
            = k1[A][B] k2[A][A][C]
            = k1[A][B]
           
            ที่ซึ่งวงเล็บเหลี่ยมแสดงถึงความเข้มข้น  พิจารณาสมการแรกคือ
 = k1[A][B] 2k2[A][A][C]
            อัตราส่วนของปฏิกิริยา 9.1 จะขึ้นอยู่กับสัดส่วนของn [A] และ [B], ตัวคงที่ของการปฏิภาคกำหนดโดย  ดังนั้นอัตราของปฏิกิริยา 1 จะกำหนดโดย  k1[A][B].
            ในแต่ละสถานะของปฏิกริยา ใช้หนึ่งหน่วยของ A   ดังนั้นอัตราการเปลี่ยนแปลงความเข้มข้นของ A เนื่องจากปฏิกิริยา 1  จะเท่ากับk1[A][B].  เครื่องหมายลบบ่งชี้ถึงถูกใช้ไปหนี่งหน่วย  มีเทอมที่คล้ายคลึงกันของ ODE อื่นๆ เทียบกับการใช้ไปของสปีชี B และสร้างสปีชี C และ D.  อัตราที่ปฏิกิริยาที่ / จะขึ้นอยู่กับสัดส่วนของ [A],   [A]อีกครั้งและ [C]   และดังนั้นอัตราของปฏิกิริยา 2 จะเป็นe k2[A][A][C]. แต่ละปฏิกิริยา 2 จะใช้ไป 2 หน่วย่ของ  A,   ดังนั้นอัตราการเปลี่ยนแปลงความเข้มข้นของ A เนื่องจากปฏิกิริยา 2 จะเท่ากับ 2k1[A][A][C],  ด้วยเทอมทำนองเดียวกันในการใช้ที่ระบุในของ ODE หนึ่งหน่วยของ C และสร้างหนึ่งหน่วยของ B   การสร้างขึ้นของสมการอนุพันธ์สามารถให้เป็นอัตโนมัติ โดยกำหนดสมการปฏิกิริยา และอัตราที่สอดคล้องกัน  โดยปล่อยให้นักเคมีกำหนดชุดสมการปฏิกิริยาที่มีเหตุผลด้วยตัวคงที่อัตราที่สอดคล้องกัน

9.2.1 ตัวอย่างของโรเบิร์ตสัน
            ปฏิกิริยาเคมีในอุดมคติที่มักจะใช้ในการสร้างระบบของ  ODE ที่มั่นคงกำหนดโดยสมการปฏิกิริยา
A
0.04
−→ B
B + B
3.0e7
−→ B + C
B + C
1.0e4
−→ A + C
มีสปีซีทางเคมี 3 สปีซี และดังนั้นจะมีระบบที่สอดคล้องของ 3 (There are 3 chemical species and so there will be a corresponding system of 3)
ODE’s modelling the evolution of the concentrations of these chemicals. The
choice of rate constants tells us that the first reaction will evolve slowly, the
second reaction very fast, and the final reaction fast.
Computational Science, Scilab Tutorials 64
Exercise 15.
1. Derive the system of ODE’s corresponding to Robertson’s example.
2. Use Scilab to solve these equations with initial concentrations [A] = 1,
[B] = [C] = 0 for t [0, 0.001]. Plot your results on the same graph using
the command of the form
xbasc();plot2d(t’,y’,leg=’A@B@C’)
I obtained the plot
0 1e4 2e4 3e4 4e4 5e4 6e4 7e4 8e4 9e4 10e4
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
The concentrations of B and C are very small compared to A. It is sensible
to normalise these concentrations by the maximum value of each concentra-
tion. We can use the max function, using the ’c’ argument to produce a
column vector containing the maximum of each row. I.e
ymax = max(y,’c’);
The trick is now to scale each row of y by the corresponding entries of ymax.
I came up with
Computational Science, Scilab Tutorials 65
yscaled = diag(1.0./ymax)*y;
Can you see what this is doing?
Now you can plot t versus yscaled with
xbasc();
plot2d(t’,yscaled’)
legends([’A’;’B’;’C’],[1;2;3])
I suggest producing a legend so that you can see which curve corresponds to
which variable. The format of the command associates a character string
(such as ’A’ with a line style 1.
ตอนนี้พล็อตกราฟที่ได้มาคือ
0 1e4 2e4 3e4 4e4 5e4 6e4 7e4 8e4 9e4 10e4
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
ABC
Scaled Plots
3. Interesting things happen for very small times as well as for much larger
times. To see these things produce approximations of the concentrations at
times 2i, i = 20, ..., 10. Plot the scaled three concentrations on the same
plot using the previous scaled method. You should use a log scale for the
time axis. Use the ’ln’ argument which tells plot2d to plot the first axis
using log scale and the second axis using normal scale
Computational Science, Scilab Tutorials 66
xbasc();
plot2d(’ln’, t’,yscaled’)
legends([’A’;’B’;’C’],[1;2;3])
Here is the plot now
5
10
4
10
3
10
2
10
1
10
0
10
1
10
2
10
3
10
4
10
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
ABC
long time scaled
4. The concentrations are still in a transient state at time t = 1024. Run
the calculation to larger times to ascertain the long time behaviour of the
system. What concentrations do A B and C limit to?

ไม่มีความคิดเห็น:

แสดงความคิดเห็น