ACM41000: Uncertainty Quantification Assignment 3
Hello, dear friend, you can consult us at any time if you have any questions, add WeChat: daixieit
ACM41000: Uncertainty Quantification
Assignment 3
1. Why do zebras have stripes and cheetahs have spots? A Turing pattern is a concept introduced by English mathematician Alan Turing in a 1952 that describes how patterns that emerge in nature, such as stripes and spots, may arise naturally and autonomously from a homogeneous, uniform state. It is often described in coupled models of reacting and diffusing chemicals. Consider such a model below for the dynamics of Ⅹl (t.s) and Ⅹ2 (t.s)
= Dl + 1 + Ⅹl(2)Ⅹ2 - 4Ⅹl
θs = D2 θt2 + 3Ⅹl - Ⅹl(2)Ⅹ2
(a) Solve the coupled system numerically in R using the ReacTran package.
Solve in t e [0.1] and s e [0.10]. Take the diffusion coefficients to be
Dl = D2 = 0.02.
boundary conditions to be
Ⅹl (0.s) = Ⅹl (1.s) = 1 and initial conditions
Ⅹl (t.0) = 1 + sin(2πt)
Ⅹ2 (0.s) = Ⅹ2 (1.s) = 3
Ⅹ2 (t.0) = 3
The initial setup is provided to you in an accompanying file on Brightspace.
(b) Derive the sensitivity equations for Ⅹl and Ⅹ2 with respect to the diffusivities Dl and D2 :
5ll =
θⅩl
θDl
52l =
θⅩ2
θDl
5l2 =
θⅩl
θD2
522 =
θⅩ2
θD2
(c) Solve the sensitivity equations taking initial conditions of all 5ij to be zero and boundary conditions on 5ij also to be zero.
(d) Briefly summarise which variables are most sensitive to which param- eters.
2. Based on the research article,
Goulet, Dave. “Modeling, simulating, and parameter fitting of biochemical kinetic experiments.” SIAM Review 58.2 (2016): 331-353
you will recreate calculations using methods learned during the module. Complete the following tasks:
(a) Give a brief introduction to the model described in (3.10), describing
solution variables, model parameters, and initial conditions. (b) Write a program in R to solve the model equations (3.10) numerically.
Note that the initial conditions are part of the right-hand side of the ODEs requiring some addional programming thought on your end. Use k+ = 200 and k− = 2 as parameter values.
The model equations form a stiff system, meaning instead of calling ode() to solve the system of differential equations, you must call lsode(). Otherwise your machine may freeze during computations!!!
(c) Fit the data in Table 2 to the solution of equations (3.10a-c) to find the best fit k+ and k− according to a Levenberg–Marquardt least-squares error algorithm. Note a simpler direct version of the sum of square errors is appropriate here:
(xout-xdata)2 + (yout-ydata)2 + (zout-zdata)2
where you define the above based on your program. In order to solve
the system for two parameters (k+.k− ), take the time interval s e [1/30.20] and use the provided data at s = 1/30 for initial conditions.
(d) Briefly discuss your implementation and results.
(e) Derive the sensitivity equations for the model (3.10), based on param- eters k+ and k− , using the procedure shown in the lectures. Compare with (B.1a-1f) in the article. Use either your derived sensitivity equa- tions, and/or (B.1a-1f) quoted in the article, to discuss and justify any difference in the best-fit parameters you obtain from that quoted in
the article for the Table 2 dataset.
Page 2 of 2
2022-04-22