TP LVfinal

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 4

Faculté des sciences et ingénierie (Toulouse III) Année universitaire

Département de mathématiques – M1 MAF 2012-2013


Modélisation en EDO, EDP, optimisation

Laurent Dietrich
TP – Équations de Lotka-Volterra (2)

Il est recommandé de créer un nouveau répertoire dans lequel seront placés les fi-
chiers relatifs à ce TP afin de ne pas mélanger, ou pire, écraser, d’anciens fichiers. Il
est chaudement recommandé de taper help quelquechose dans l’invite de commande de
Matlab, lorsque vous voulez des renseignements sur la commande quelquechose et/ou de
m’interpeller. Il est aussi chaudement recommandé de ne pas aller recopier du code d’un
ancien TP afin d’éviter de recopier au pire des erreurs, au mieux quelque chose dont
le code n’aura pas la même structure qu’ici, ce qui vous fera perdre du temps, et de
l’entraînement.

1 Rappel du modèle, premières illustrations


On rappelle le modèle de Lotka-Volterra, pour a, b, c, d > 0 des réels

0
x = (a − by)x


y 0 = (−c + dx)y

x(0) = x ≥ 0, y(0) = y ≥ 0

0 0

1. Réécrire ce système d’équations sous la forme u0 = f (u).


2. Écrire sommairement le principe de la méthode d’Euler explicite, appliquée dans
ce cadre.
3. Interpréter géométriquement la méthode d’Euler explicite en termes du champ de
vecteurs f .
4. Pour étayer la question précédente, on se propose comme première illustration de
tracer le champ de vecteurs f . Il s’agit donc de discrétiser l’ouvert sur lequel on
travaille (sur quel ouvert travaille-t-on ?), et de tracer le vecteur correspondant
sur chaque point de la discrétisation. Matlab peut prémâcher un tel travail grâce
aux deux commandes : meshgrid qui retourne une grille quand on lui donne deux
discrétisations en x et en y, et quiver qui dessine le champ de vecteur qu’on lui
donne sur la grille qu’on lui donne : essayez de comprendre le fonctionnement de ces
deux fonctions en faisant appel à l’aide et en faisant quelques tests, puis proposez
un tracé du champ.
5. Discutez du résultat ; proposez des conjectures sur l’allure des trajectoires.

1
Champ de vecteurs associé à a=2, b=c=d=1
4.5

3.5

2.5

2
y

1.5

0.5

−0.5
−0.5 0 0.5 1 1.5 2 2.5 3 3.5
x

Figure 1 – Ce à quoi le champ de vecteurs doit ressembler

2 Implémentation des schémas numériques


1. Implémentez une fonction [ t ,u] = EulerE(u0,h,T) qui retourne la subdivision en
temps et la solution approchée associée, calculée par la méthode d’Euler explicite,
pour des valeurs de paramètres u0, h, T . Tracez une trajectoire dans le plan de
phase. Repérez le point de départ, aussi à l’aide de plot. Tracez x et y en fonction
de t (on utilisera plot(t ,x, t ,y)). Discutez de vos précédentes conjectures.
2. Ré-itérez la question précédente, avec la méthode de Runge-Kutta d’ordre 4.

3 Données
En écologie, la collecte de donnée est un problème compliqué. Néanmoins, et avec
toutes les précautions que l’on peut prendre, on prendra en considération le graphe
suivant ainsi que ce texte explicatif de Douglas R. Hundley
(http ://people.whitman.edu/ hundledr/)
NOTE about the data : I have not been able to verify this data,but this is the
data (or rather the graph) that is always cited. This particular set of data
came from scanning in the graph from Odum’s ”Fundamentals of Ecology”, p.
191 which is often cited. Odum says that his graph is taken from MacLulich’s
”Fluctuations in the numbers of varying hare”, 1937, which is not widely
available. Some authors caution that this data is actually a composition of
several time series, and should probably not be analyzed as a whole, and
that some of the lynx data was actually missing. It is said that the data was
collected from Hudson’s Bay historical records, and does not reflect animal

2
populations, but rather the number of pelts turned in for trading (a large
number of which came from Native Americans-mentioned because there were
some medical outbreaks during these years which could account for skewed
data). The data is presented here with these cautions.

Figure 2 – Relevés
On pourra mettre en rapport les résultats obtenus et ces relevés, ainsi qu’avec les
propriétés globales des solutions qu’on a vues en cours.

4 Propriétés des méthodes par rapport au hamiltonien


1. Ré-itérez la question de la section 2 avec cette fois ci la méthode d’Euler implicite
(on programmera une méthode de Newton dans une fonction un1 = newton(un,h,tol)
pour la résolution de l’équation non linéaire à chaque étape), puis celle de Crank-
Nicholson. Affichez la quantité
H(x, y) = dx − cln(x) + by − aln(y)
(cf. le cours pour les propriétés de cette fonction) le long de vos trajectoires appro-
chées. Mettez ce résultat en relation avec l’allure de vos trajectoires et le caractère
explicite ou implicite des méthodes.
2. (
En guise d’exercice, on pourra refaire cette question sur l’équation plus simple
x0 = −y
pour laquelle on a un hamiltonien
y0 = x

H(x, y) = x2 + y 2
Le calcul de H le long des trajectoires approchées peut alors se faire à la main et
illustrer précisément les observations précédentes.

3
3. Dans ce cadre, la méthode de Crank-Nicholson est dite symplectique. Quelle pro-
priété particulière a-t-elle par rapport aux autres ?

5 Ordres de convergence
Comme on ne connait pas d’expression analytique des solutions des équations de
Lotka-Volterra, on ne peut pas mettre en valeur l’ordre de convergence des méthodes
numériques précédemment employées. On peut cependant le faire sur des problèmes plus
simples. Proposez donc un protocole simple pour rendre compte visuellement des divers
ordres de convergences (1, 2, 4) des méthodes employées.

Vous aimerez peut-être aussi