Simulation of the Belousov-Zhabotinsky Chemical Oscillator...
Transcript of Simulation of the Belousov-Zhabotinsky Chemical Oscillator...
![Page 1: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/1.jpg)
Simulation of the Belousov-Zhabotinsky ChemicalOscillator using Python
By: Steven SelverstonFor: Prof. Jim Crutchfield
PHY-150University of California, Davis
6/2/2009
![Page 2: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/2.jpg)
The famous B-Z reaction creates fantastic designs in small dishes
![Page 3: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/3.jpg)
Background:
• Originally found by Boris Belousov sometime in the1950s- could not get the work published initially
• Study was continued in 1961 by Anatol Zhabotinsky
Belousov Zhabotinsky
Simple oscillatory behavior likethat shown to the right, can lastfor several hours before equilibriumis reached*
* Scott,S.K. 1992. Chemical Chaos
![Page 4: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/4.jpg)
80-step mechanisms havebeen proposed
Moral of the story:The chemistry details areextremely complicated
(GNU Publicly Licensed Image)
![Page 5: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/5.jpg)
Simpler mechanisms arebetter for modeling: here, an
11-step mechanism
(GNU Publicly Licensed Image)
![Page 6: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/6.jpg)
ODEs: the “Oregonator”
A = B≡ [BrO3-]X ≡ [HBrO2]Y ≡ [Br-]Z ≡ [Ce4+]
dX/dt = k3AY - k2XY + k5BX - 2k4X2
dY/dt = -k3AY - k2XY + f kj Z
dZ/dt = 2k5BX - kjZ
Field and Noyes. 1974. Oscillations in chemical systems.
Field-Noyes Version:
All rate constants estimated fromempirical experiments
![Page 7: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/7.jpg)
Tyson’s Version
• Convenient non-dimensionalization• Simplest three-variable BZ model
dx/dt = (qy - xy + x(1-x))/ε
dy/dt = (-qy - xy + fz)/ε’
dz/dt = x - z
J.J. Tyson, 1985Oscillations and Traveling Waves in Chemical SystemsEdited by Field & Burger pp. 111-112
![Page 8: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/8.jpg)
Limit cycles, but no chaos
Green = log10(scaled Ce4+)
Red = log10(scaled Br-)
Blue = log10(scaled HBrO2)
Corresponding 3D Attractor
* 2D Plot made by matplotlib* 3D Plot made by MayaVi* Enthought Python Distribution
![Page 9: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/9.jpg)
Continuous-flow Stirred Tank Reactors (CSTR)• Avoids equilibrium by using an open system• Chaos results from interactions from two frequencies
on different timescales*• frequency1: BZ limit cycle• frequency2: BrMA cycling concentration
reactants in products out
τ = volume (m3)/flowrate (m3/s)kf = 1/τ = inverse residence time
(similar to flowrate)CSTR
*Gyorgyi & Field, 1992 Nature 355 pp. 808-810
stirrer
![Page 10: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/10.jpg)
7-step mechanism
(1) Y + X + H -> 2 V(2) Y + A + 2H -> V + X(3) 2X -> V(4) 0.5X + A +H -> X + Z(5) X + Z -> 0.5X(6) V + Z -> Y(7) Z + M ->
Y ≡ Br-
X ≡ HBrO2Z ≡ Ce(IV)V ≡ BrCH(COOH)2A ≡ BrO3
-
H ≡ H+
M ≡ CH2(COOH)2
Gyorgyi & Field, 1992 Nature 355 pp. 808-810
![Page 11: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/11.jpg)
chaotic three-variable model basedon a 7-parameter rate equation
dx/dt = To{-k1HYoxy + k2AH2Yo/Xoy - 2k3Xox2
+ 0.5k4A0.5H1.5Xo - 0.5(C - Zoz)x0.5
- 0.5k5Zoxz - kfx}
dz/dt = To{k4A0.5H1.5X0.5(C/Zo - z)x0.5 - k5Xoxz- αk6Vozv - βk7Mz - kfz}
dv/dt = To{2k1HXoYo/Voxy + k2AH2Yo/Voy + k3Xo
2/Vox2 - αk6Zozv - kfz
* kf term represents the inverse residence time in a CSTR
Gyorgyi & Field, 1992 Nature 355 pp. 808-810
Scaled DifferentialEquations:
![Page 12: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/12.jpg)
Period Doubling to Chaos
Decreasing flow rate parameter kf
1 2 3
4 5 6
![Page 13: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/13.jpg)
![Page 14: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/14.jpg)
![Page 15: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/15.jpg)
![Page 16: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/16.jpg)
attractor formed at low ‘flowrate’ conditions
the attractor is virtually 2D
![Page 17: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/17.jpg)
Higher Flow Rate Conditions
![Page 18: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/18.jpg)
320 stepsGreen: IC = ( 0.446751, 5.275282, 0.393890)Black: IC = (0.446780, 5.275270, 0.393895)
sensitive dependence on initial conditions
kf = 0.00216
![Page 19: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/19.jpg)
640 stepsGreen: IC = ( 0.446751, 5.275282, 0.393890)Black: IC = (0.446780, 5.275270, 0.393895)
sensitive dependence on initial conditions
kf = 0.00216
![Page 20: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/20.jpg)
kf = 0.0020798
![Page 21: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/21.jpg)
kf = 0.00208
~ 1000 iterations
~ 20000 iterations
![Page 22: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/22.jpg)
kf = 0.002081
![Page 23: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/23.jpg)
kf = 0.00208105
![Page 24: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/24.jpg)
kf = 0.00216
![Page 25: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/25.jpg)
kf = 0.00216
![Page 26: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/26.jpg)
kf = 0.00216
![Page 27: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/27.jpg)
Caution: Stiff ODEs
• Runge-Kutta fails (At least without avariable step-size)
• Popular method for integrating theseODE’s is known as the GEAR method
• In Python, one can use SciPy’sintegrate.odeint()
• Orbit Diagrams in MayaVi can take avery long time
![Page 28: Simulation of the Belousov-Zhabotinsky Chemical Oscillator ...csc.ucdavis.edu/.../Selverston_BZ_Presentation.pdf•frequency1: BZ limit cycle •frequency2: BrMA cycling concentration](https://reader034.fdocuments.us/reader034/viewer/2022051804/5ff1d37c3d4cc62907161ab3/html5/thumbnails/28.jpg)
ThanksQuestions?