# 代写MATH36031、代做MATLAB编程设计

- 首页 >> DatabaseMATH36031 Project 2 - deadline 24th November 2023, time 1100hrs.

In this project, the dynamics between a fox and a rabbit will be investigated, by solving

differential equations modelling their positions at different times. The initial configuration

is shown in Figure 1, where the fox starts chasing the rabbit while the rabbit tries to escape

from its predator and moves towards its burrow. The fox is initially located at the origin

O(0, 0) and the rabbit is at (0, 800). There is a circular fence with an opening G at (0, 300).

The rabbit moves in a circular path of radius 800 with speed sr

1

towards its burrow. The

rabbit’s burrow is located at 800(− sin(π/3), cos(π/3)). The path of the fox is initially

directed straight towards G with speed sf . After having reached the opening at G, the

subsequent path the fox takes in trying to catch the rabbit depends on whether its view of

the rabbit is blocked by the straight line fence between A and E or not, as follows:

if after having passed through the opening G the rabbit is in sight, the fox’s attack

path points directly towards the rabbit (the direction of the velocity vector of the fox

is exact from the fox to the rabbit);

if the view of the rabbit is blocked by an impenetrable straight line fence AE, see

figure 1, then the fox runs directly towards the corner A. The coordinates of AE are

1The subscripts f and r denote the fox and rabbit respectively. The units of the coordinates are metres.

Burrow

Figure 1: Schematic diagram showing the geometry and obstacles with O denoting the origin

of coordinates. There is a circular fence C with a small opening at G (0, 300). There is a

fence at AE with A (−350, 620) and E(−500, 350). The dashed green line shows the path

followed by the rabbit towards it burrow. The dashed-dotted red line shows the initial path

of the fox.

1

A(−350, 620) and E(−500, 350). Once the fox can see the rabbit again its attack path

points directly towards the rabbit.

Question 1: Constant speeds.. Assuming that both the fox and the rabbit run with

constant speeds sf = sf0 = 17m/s and sr = sr0 = 12m/s respectively, determine whether

the rabbit can be captured before it reaches its burrow. The rabbit is considered to be

captured by the fox, if the distance between them is smaller than or equal to 0.1 meter.

Question 2: Diminishing speeds. Let us consider a more realistic scenario, when

the hungry fox meets the tired rabbit. Because neither the fox nor the rabbit are in their

best conditions, their chasing/escaping speeds diminish in time, according to the amount of

distance (starting from the time they find each other and start running) they have travelled

so far. More precisely, their speeds at time t are given by

sf (t) = sf0e

−µf df (t)

, sr(t) = sr0e

−µrdr(t)

,

where sf0 = 17m/s and sr0 = 12m/s are the same initial speeds as above, µf = 0.0002m−1

and µr = 0.0008m−1 are the rates of the diminishing speeds, df (t) and dr(t) are the distance

they have travelled up to time t(> 0). Determine whether the rabbit can be captured before

it reaches its burrow. (You may assume that this diminishing speed starts from t = 0).

Outputs required You are required to submit a report (maximum 8 pages including

any appendices) in pdf form via the Turnitin submission box on Blackboard. Additionally

you need to submit your m-files used for the MATLAB codes via the Blackboard Submission

Box also on Blackboard. As part of the required output, in your report give (i) the time T

and the location of the fox when either the rabbit is captured or the rabbit escapes to the

burrow; (ii) the distance travelled by the fox in time T . Additionally provide a plot showing

the paths taken by both animals.

Additional information and guidelines

1. All coding must be done in MATLAB.

2. Treat both the fox and the rabbit as points, without worrying about their finite sizes

(as in most models).

3. The questions can be answered with different approaches, but you need to use the

built-in ODE solver ode45 discussed during the lectures.

4. Avoid using hard-coded numbers. Any number in your code should either be given as

initial condition, or be derived from these conditions.

5. Keep to the page length not exceeding eight A4 pages, and there is no need for a title

page or abstract for a relative short report like this. Font sizes should be no smaller

than 11 point, and page margins no smaller than 2cm.

6. List the complete code of the whole function at the end of each question, or in an

appendix. Make your source code more readable, by keeping the indentation and

2

stylistic features, and can be copied from your submitted. Your published results

should be reproducable from the code attached.

7. Have a look at the generic rubric about how your report will be marked, and also the

intended learning outcomes about what you are expected to achieve in the end.

8. Avoid copying (too many) sentences directly from the project description, and try to

restate the problem with your own words or examples if possible.

9. You may use your report in the future as evidences of written work, so take it seriously.

10. Your target audience is a fellow student on your course: explain the questions so that

the report can be understood without this project description and your approach could

be implemented in another computer language like Python. The report should indicate

to the reader how well you understand the problem and the approach you took. Your

goal will be to communicate your solutions to another person rather than to show

you’ve completed the assignment.

11. Balance the explanation of the approach and the comments in the code. Avoid undercommenting and over-commenting.

12. Aim for precision and clarity of writing.

13. Since there is no final exam, you are advised to spend at least 15 hours on each project,

with additional self-study if you are less experience with computer programming. Remember for a 10 credit module like this one, you are expect to spend 100 = 10 Ö 10

hours in total (including lectures, labs, self-study and coursework).

14. Please do not put any personal information on the report, only your student ID number.

15. The submission for each project will be open two weeks before the deadline. Only

your last submission will be marked, and anything submitted after the deadline will

be treated late and any penalty will be applied by the Teaching and Learning Office

in June according to the Undergraduate Student Handbook.

16. Whilst this project can be done without the use of any artificial intelligence (AI)

software tools, if you use any AI tools or software to help you with your

18. We are obliged to report cases of suspected academic malpractice, and people may

be subject to an additional oral assessment on the content of the report and codes

submitted.

4