(*^
::[paletteColors = 128; showRuler; automaticGrouping; magnification = 125; currentKernel;
fontset = title, inactive, noPageBreakBelow, noPageBreakInGroup, nohscroll, preserveAspect, groupLikeTitle, center, M7, bold, L1, e8, 24, "Times"; ;
fontset = subtitle, inactive, noPageBreakBelow, noPageBreakInGroup, nohscroll, preserveAspect, groupLikeTitle, center, M7, bold, L1, e6, 18, "Times"; ;
fontset = subsubtitle, inactive, noPageBreakBelow, noPageBreakInGroup, nohscroll, preserveAspect, groupLikeTitle, center, M7, italic, L1, e6, 14, "Times"; ;
fontset = section, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeSection, grayBox, M22, bold, L1, a20, 18, "Times"; ;
fontset = subsection, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeSection, blackBox, M19, bold, L1, a15, 14, "Times"; ;
fontset = subsubsection, inactive, noPageBreakBelow, nohscroll, preserveAspect, groupLikeSection, whiteBox, M18, bold, L1, a12, 12, "Times"; ;
fontset = text, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L1, 12;
fontset = smalltext, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L1, 10, "Times"; ;
fontset = input, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeInput, M42, N23, bold, L1, 12, "Courier"; ;
fontset = output, output, inactive, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeOutput, M42, N23, L-5, 12, "Courier"; ;
fontset = message, inactive, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeOutput, M42, N23, L1, 12, "Courier"; ;
fontset = print, inactive, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeOutput, M42, N23, L1, 12, "Courier"; ;
fontset = info, inactive, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeOutput, M42, N23, L1, 12, "Courier"; ;
fontset = postscript, PostScript, formatAsPostScript, output, inactive, noPageBreakInGroup, nowordwrap, preserveAspect, groupLikeGraphics, M7, l34, w282, h287, L1, 12, "Courier"; ;
fontset = name, inactive, noPageBreakInGroup, nohscroll, preserveAspect, M7, italic, B65535, L1, 10, "Times"; ;
fontset = header, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, italic, L1, 12, "Times"; ;
fontset = Left Header, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, italic, L1, 12, "Times"; ;
fontset = footer, inactive, nohscroll, noKeepOnOnePage, preserveAspect, center, M7, italic, L1, 12, "Times"; ;
fontset = Left Footer, inactive, nohscroll, noKeepOnOnePage, preserveAspect, center, M7, italic, L1, 12, "Times"; ;
fontset = help, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L1, 12;
fontset = clipboard, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L1, 12;
fontset = completions, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L1, 12, "Courier"; ;
fontset = special1, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L1, 12;
fontset = special2, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L1, 12;
fontset = special3, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L1, 12;
fontset = special4, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L1, 12;
fontset = special5, inactive, nohscroll, noKeepOnOnePage, preserveAspect, M7, L1, 12;
next21StandardFontEncoding; ]
:[font = title; inactive; preserveAspect; startGroup; ]
Foxes and Chicken
:[font = text; inactive; preserveAspect; ]
Yes, foxes and chickens!! Consider the following problem: a population of foxes and chickens enjoys a predator/prey relationship which is modelled as a linear system. The coefficients that model the relationship are determined experimentally, and one parameter, the kill rate k (of chickens by foxes ) varies with different populations and locales. If F_n and C_n are the fox and chicken populations at the beginning of year n, then the populations in the following year are given by
F_{n+1} = 0.6*F_n + 0.5*C_n
C_{n+1} = -k*F_n + 1.2*C_n
Can you attach a meaning to each of the coefficients? In matrix form we can write the column vector [F_i, C_i] as x{i} and express the formula as
x{i+1} = A . x{i}
where the matrix A = {{0.6, 0.5}, {-k, 1.2}}. Click the following cell:
:[font = input; preserveAspect; ]
a = {{0.6, 0.5},{-k, 1.2}}
:[font = text; inactive; preserveAspect; ]
Now here is the question: for what values of the kill rate k will the fox and chicken populations die out? For what values will it grow without bound? Is there a value for which the populations will stabilize?
Here is where Mathematica really shines!! We recognize this as an example of a discrete linear dynamical system; that is, the system is described at each discrete time step by a state vector, and one gets the subsequent state vector for the current one by multiplying the current state by a fixed transition matrix. Later on, we will analyze this phenonemon thoroughly in terms of eigenvectors and eigenvalues. For the time being, we are going to attack
;[s]
3:0,0;231,1;242,2;674,-1;
3:1,11,8,Times,0,12,0,0,0;1,10,8,Times,2,12,0,0,0;1,11,8,Times,0,12,0,0,0;
:[font = input; preserveAspect; ]
s[k_] := Max[Abs[Eigenvalues[a]]]
:[font = input; preserveAspect; ]
Plot[s[k],{k,0,2}]
:[font = text; inactive; preserveAspect; ]
Now narrow the graph a little and see if you can find a value of k for which the largest eigenvalue is about 1 and test this value on the population x below.
:[font = input; preserveAspect; ]
x = {100,1000}
:[font = input; preserveAspect; ]
k = .5
:[font = input; preserveAspect; ]
a.a.a.a.x
:[font = input; preserveAspect; ]
a.a.a.a.a.a.a.a.x
:[font = input; preserveAspect; ]
a.a.a.a.a.a.a.a.a.a.a.a.x
:[font = input; preserveAspect; ]
a.a.a.a.a.a.a.a.a.a.a.a.a.a.a.a.x
:[font = text; inactive; preserveAspect; endGroup; ]
Conclusions???
^*)