Академический Документы
Профессиональный Документы
Культура Документы
301
Le compte rendu seffectue avant le mercredi 4 mars 2015 23h sur moodle.
Vos fonctions doivent tre testes, documentes et commentes.
Les questions
sont facultatives.
Une ide pour calculer numriquement la premire drive de au point 0 consiste donc
se donner une valeur positive assez petite (le pas) et calculer
(0 )
(0 ) (0 + ) (0 ).
Lorsque > 0 est donn, lobjet mathmatique est un oprateur ; toute fonction continue donne, il fait correspondre une autre fonction continue dfinie par
() = ( + ) (). Cet oprateur est appel oprateur de diffrence premire progressive. Cet oprateur est linaire.
301.1
Les codes python relatifs cette section seront sauvegards dans un fichier nomm partie1.py
Gnralits
Dans cette partie, nous notons
[
[
0 , +
(, )
.
(, )
une fonction donne de deux variables et . Dans les applications, est souvent une variable
physique alors que est une variable temporelle, que nous appellerons temps.
Nous voulons rsoudre le problme de Cauchy suivant : tant donne une valeur 0 (0
est dite valeur initiale), trouver une fonction de classe 1 , [0 , +[ () qui
satisfait
.
() = (, ())
(1)
(0 ) = 0 ,
d
.
o nous avons not () =
().
d
Exemple 1 On se donne (, ) = 33, 0 = 0 et 0 = (un nombre quelconque). Le problme
de Cauchy devient
.
() = 3() 3
(2)
(0) = ;
sa solution est donne par () = ( 13) 3 + + 13.
1
Schmas dEuler
Pour tablir un schma dapproximation du problme (1), nous commenons par partitionner
laxe (), cest--dire nous choisissons des points 0 , 1 , 2 , tels que
0 < 1 < 2 < < < +1 <
En posant = +1 , nous pouvons approcher
.
( ) par
(+1 ) ( )
.
Si est une approximation de ( ), ces deux approches nous suggrent les schmas suivants, dit
schma dEuler progressif
(
)
+1
= , ,
= 0, 1, 2,
(3)
= 0 .
Le schma dEuler progressif est un schma explicite car il permet dexpliciter +1 en fonction
de :
(
)
+1 = + , .
Exercice 1 crire une fonction subdiv_reg dont le prototype est
1
subdiv_reg(a, b, n)
o a et b sont deux flottants tels que < , et n est un entier non nul. Cette fonction retourne la
liste constitue des + 1 lments 0 < 1 < < dune subdivision rgulire du segment
[, ].
Exercice 2
1. crire une fonction euler_progressif conduisant la rsolution approche du problme
de Cauchy
.
() = (, ())
(4)
(0 ) = 0 ,
Les arguments de cette fonction tant
une fonction f de deux variables,
une liste subdiv de flottants dont les lments sont tris par ordre strictement croissant
(cest la liste des ).
u_zero est un flottant reprsentant la valeur initiale au temps 0 , le premier lment
de la liste subdiv.
Cette fonction retourne la liste des approximations successives obtenues par la mthode
dEuler avec la subdivision subdiv (cest la liste des ).
2. On considre le problme de Cauchy sur lintervalle [0, 1].
.
() = (1 + 2) (), et (0) = 1.
Afficher sur un mme graphique les courbes de
(
)2
la solution analytique 14 2 + + 2
la solution approche avec la Mthode dEuler avec une subdivision avec un pas
constant de 0.2.
la solution approche avec la Mthode dEuler avec une subdivision avec un pas
constant de 0.1.
Exercice 3
1. Affecter la variable globale1 T la valeur 1, T reprsentant la priode (toutes les dures
seront donc exprimes en ms).
2. Dfinir la fonction e qui, toute date t (flottant), fait correspondre la valeur (). Pour cela,
on utilise la dfinition rcursive suivante
0
si < 0
, () =
si 0 < 2
( ) si 2
La loi des mailles dans le circuit 301.1 permet dtablir lquation diffrentielle rgissant
lvolution de la tension aux bornes du condensateur :
() = () + () avec
() =
d
d
d
d
+ () = () .
= (, , , ) avec
(, , , ) =
() ()
variables globales, cest mal. Mais en physique, cest souvent bien pratique pour les constantes...
(5)
; 2 =
; 3 = 10
; 4 = 10
301.2
SYSTMES DIFFRENTIELS
Les codes python relatifs cette section seront sauvegards dans un fichier nomm partie2.py
2
#
(, #
)
Si #
0 2 , on pose le problme de trouver une fonction valeurs vectorielles
#
#
() 2
telle que
.
#
() =
#
( ) =
0
#
(, #
())
#
.
0
et
(0) = 0 .
(6)
cest--dire
+1 = + 1 ( , , )
+1 = + 2 ( , , )
Exercice 4
1. crire une fonction euler2 de prototype euler2(f1, f2, subdiv, x_zero, y_zero)
qui implmente le schma dEuler prcdent avec la subdivision subdiv, et les conditions
initiales x_zero, y_zero.
Cette fonction retourne deux listes, correspondant aux approximations successives des fonctions et .
On sintresse au systme dquations de Lotka-Volterra. Celui-ci est classiquement utilis pour
dcrire lvolution dun couple proie-prdateur (ici est leffectif des proies, celui des prdateurs).
{
d
() = () ()()
d
d
() = () + ()()
d
avec = 1, = 0.1, = 1.5, = 0.75.
2. Rsoudre numriquement le systme de Lotka-Volterra sur lintervalle de temps [0, 100]
en utilisant une subdivision rgulire de 100000 pas. On prendra pour condition initiale 10
proies, et 5 prdateurs.
3. Tracer sur un mme graphique lvolution du nombre de proies et de prdateurs en fonction
du temps. Sauvegarder ce graphique.
4. Tracer lvolution conjointe du nombre de proie et de prdateurs, cest--dire le nombre de
prdateurs en fonction du nombre de proies. Sauvegarder ce graphique.
Commenter le rsultat obtenu.
.
des forces de frottements de type fluide en f luide = #
= ;
# # #
# #
la raction du support = + o et correspondent respectivement aux composantes normale et tangentielle. Lorsque la masse glisse, la composante tangentielle (frottements solides) soppose la vitesse de la masse et a pour valeur absolue | | = || o
est un facteur numrique (coefficient de frottement dynamique). Lorsque la vitesse de la
masse est nulle, on supposera que la composante tangentielle est nulle. On a donc
0
= ||
+ ||
On donne :
.
si = 0
.
si > 0
.
si < 0
= 0, 5 kg ; = 500 Nm ; = 10 ms2
.
..
+ 20 + 20 = 0 avec
=
0
(pulsation propre)
(7)
(facteur damortissement)
1. Dfinir la fonction T qui prend comme argument le paramtre vitesse et qui renvoie la
valeur de la force de frottement solide (les paramtres , et seront pris comme des
variables globales).
2. crire lquation diffrentielle (7) sous la forme dun systme dquations diffrentielles
du premier ordre de la forme
{ .
{
= 1 (, , )
=
.
avec
.
= 2 (, , )
=
que valent les fonctions 1 et 2 ?
3. Dfinir les fonctions f_1 et f_2 darguments trois flottants t, X et Y.
4. crire une fonction oscillateur_euler qui prend comme arguments :
deux fonctions f et g ;
2 Ces actions sont toutes rductibles des glisseurs et par consquent totalement dtermines par leurs rsultantes
(forces) et un point dapplication.