MA302 Final Project
Due Thursday, 12/2,
or 11/24 if you prefer not to have anything due in the final week
You may work in a team up to three persons. All the team
members receive the same score. Each team should submit
only one report. If you don't have a partner, e-mail me at
zhilin@math.ncsu.edu and I will try to match you with somebody.
The project is about the Oregonator from Section
14.7. Additional reference is available from me upon request.
Alternatively, you can choose a problem from your
own favorite field . The problem of your choice has to have two or
more equations and two or more parameters. You have
to follow the following Project Format.
Preamble: (10 points)
Title of your project.
Names and student ID of your team member(s).
Abstract
Note: Abstract is a brief summary of your project. It contains
the problem that you intend to solve, the method(s) you used in the project
and main results and conclusions of your analysis or numerical results.
It should be about ten sentences long.
Introduction (15 points)
Describe the problem , its importance, and history if possible.
Define and explain all of your variables, parameters and their units,
and notations.
Theoretical Discussions (10 points)
Non-dimensionalize the problem if possible.
Find and/or verify any steady state solutions (equilibriums).
Numerical Computation and
Analysis (55 points)
Write a Matlab code to define the system of differential equations.
Write a Matlab drive code to define the parameters, input
the initial condition, solve the problem using Matlab ode23s
(recommended), or ode15s, or ode45, and
plot the solutions versus time and get the phase
plot. You need to mark the initial point on the phase plot
and the direction of the trajectories.
Try to re-produce Figure 14.4 and do the experiments
as suggested in the text book, page 362, if you choose the problem in Section
14.7.
Briefly describe the numerical method that you used, for example, ode23s.
How is the method related to Runge Kutta methods? It is an explicit
or implicit method? How accurate is the method? Does it use fixed
or variable time steps? What is the data structure of its output?
When do we want to use ode45 or ode23s?
What kind of steady state solution (equilibrium) does the system have?
Is it stable or unstable limit cycle? (The answer may depends on the choice
of parameters)
Explain the meanings of your solutions and the relation with the parameters,
for example, if k5=0, or w=0, then y tends to zero and there are no oscillations.
Present results from selected , clearly labeled plots (title, xlabel, ylabel,
zlabel). I expect eight plots from you. Hint: There
are four paragraphs in the text book discuss about the numerical experiments,
you should produce two plots from each paragraph, the solution plots and
the phase plots.
Hint: Type help semilogy; help
subplot; and help plot3 in Matlab to see their usages.
y1=y(:,1);
y2=y(:,2); y3=y(:,3);
subplot(311); semilogy(t,y1); xlabel(' ....
subplot(312); semilogy(t,y2); xlable('....
subplot(313); semilogy(t,y3); xlable(' ...
figure(2); plot3(y1,y2,y3); title('...
Appendix (10 points)
Lists of the Matlab codes you used, the function and the driver.
References (text book or any other related materials you have used).
Extra Credits (10
points):
(5 points) Use some advanced
options of ode23s. Hint: type help odeset in
Matlab.
(5 points) Find the cputime
and the number of the floating point operations of your Matlab code. Hint:
type help cputime and help flops in Matlab.