σμimplied vol · KKmax(S−K,0)udβρᵢⱼfat tailsPnL · drawdownyield · TdSₜ = μSₜ dt + σSₜ dWₜC = S·N(d₁) − K·e⁻ʳᵀ·N(d₂)σₚ² = wᵀΣwd₁ = [ln(S/K) + (r + σ²⁄2)T] ⁄ σ√T∂V/∂t + ½σ²S²·∂²V/∂S² + rS·∂V/∂S − rV = 0Sharpe = (Rₚ − R_f) ⁄ σₚVaR₉₉ = μ − 2.33σρ = Cov(X,Y) ⁄ σₓσᵧE[Rₚ] = Σ wᵢ·E[Rᵢ]φ(x) = e^(−x²/2) ⁄ √2πE[Rᵢ] = R_f + βᵢ(E[Rₘ] − R_f)dXₜ = θ(μ − Xₜ)dt + σ dWₜσ²ₜ = ω + α·ε²ₜ₋₁ + β·σ²ₜ₋₁C − P = S − K·e⁻ʳᵀΔ = ∂V/∂S Γ = ∂²V/∂S²p = (e^(rΔt) − d) ⁄ (u − d)rₜ = ln(Pₜ ⁄ Pₜ₋₁)E[Xₜ₊₁ | ℱₜ] = Xₜf* = (bp − q) ⁄ bz = (x − μ) ⁄ σP(N=k) = λᵏe^(−λ) ⁄ k!Θ = −∂V/∂Tν = S·φ(d₁)·√Tmin wᵀΣw s.t. wᵀμ = μ*∫Σ∂∞λ
uantCraft AcademyFeuilles de routeParcours
Ctrl K
AO
+1,2 k apprenants
ConnexionRejoindre ↗
Feuilles de routeParcours
AO
+1,2 k apprenants
Connexion
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
σμimplied vol · KKmax(S−K,0)udβρᵢⱼfat tailsPnL · drawdownyield · TdSₜ = μSₜ dt + σSₜ dWₜC = S·N(d₁) − K·e⁻ʳᵀ·N(d₂)σₚ² = wᵀΣwd₁ = [ln(S/K) + (r + σ²⁄2)T] ⁄ σ√T∂V/∂t + ½σ²S²·∂²V/∂S² + rS·∂V/∂S − rV = 0Sharpe = (Rₚ − R_f) ⁄ σₚVaR₉₉ = μ − 2.33σρ = Cov(X,Y) ⁄ σₓσᵧE[Rₚ] = Σ wᵢ·E[Rᵢ]φ(x) = e^(−x²/2) ⁄ √2πE[Rᵢ] = R_f + βᵢ(E[Rₘ] − R_f)dXₜ = θ(μ − Xₜ)dt + σ dWₜσ²ₜ = ω + α·ε²ₜ₋₁ + β·σ²ₜ₋₁C − P = S − K·e⁻ʳᵀΔ = ∂V/∂S Γ = ∂²V/∂S²p = (e^(rΔt) − d) ⁄ (u − d)rₜ = ln(Pₜ ⁄ Pₜ₋₁)E[Xₜ₊₁ | ℱₜ] = Xₜf* = (bp − q) ⁄ bz = (x − μ) ⁄ σP(N=k) = λᵏe^(−λ) ⁄ k!Θ = −∂V/∂Tν = S·φ(d₁)·√Tmin wᵀΣw s.t. wᵀμ = μ*∫Σ∂∞λ
uantCraft AcademyFeuilles de routeParcours
Ctrl K
AO
+1,2 k apprenants
ConnexionRejoindre ↗
Feuilles de routeParcours
AO
+1,2 k apprenants
Connexion
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
Parcours Calculus›Module 3 · Approximation et dynamique›Sujet 3.2·~50 minIntermédiaire

Équations différentielles : Euler et RK4

Position dans le parcoursModule 3 sur 4 · Sujet 2 sur 2
3.2 Équations différentielles : Euler et RK4
—Score du lab— / 100XP total—Série—

Suivre un taux de variation

Une équation différentielle dit à quelle vitesse une grandeur varie : dydt=f(t,y)\frac{dy}{dt}=f(t,y)dtdy​=f(t,y). Un capital qui croît à un taux continu rrr obéit à dydt=ry\frac{dy}{dt}=rydtdy​=ry, de solution y0erty_0e^{rt}y0​ert. Un taux court rappelé vers un niveau de long terme θ\thetaθ obéit à drdt=κ(θ−r)\frac{dr}{dt}=\kappa(\theta-r)dtdr​=κ(θ−r). Peu d'équations ont une solution en formule : on avance donc dans le temps numériquement.

yn+1=yn+h f(tn,yn)y_{n+1}=y_n+h\,f(t_n,y_n)yn+1​=yn​+hf(tn​,yn​)(1)

La méthode d'Euler suit la tangente sur un court pas hhh : nouvelle valeur = ancienne valeur + pas × pente. Elle est simple mais seulement d'ordre 1 : diviser hhh par deux divise l'erreur par deux. Runge–Kutta d'ordre 4 (RK4) évalue la pente quatre fois par pas et les combine, yn+1=yn+h6(k1+2k2+2k3+k4)y_{n+1}=y_n+\frac{h}{6}(k_1+2k_2+2k_3+k_4)yn+1​=yn​+6h​(k1​+2k2​+2k3​+k4​), et son erreur varie en h4h^4h4 : diviser hhh par deux la divise par 16.

Croissance au taux 1, de deux façonsRésolvons y′=yy'=yy′=y, y(0)=1y(0)=1y(0)=1 jusqu'à t=1t=1t=1 avec h=0,5h=0{,}5h=0,5. Euler : y1=1+0,5⋅1=1,5y_1=1+0{,}5\cdot1=1{,}5y1​=1+0,5⋅1=1,5, y2=1,5+0,5⋅1,5=2,25y_2=1{,}5+0{,}5\cdot1{,}5=2{,}25y2​=1,5+0,5⋅1,5=2,25, contre e=2,7183e=2{,}7183e=2,7183, soit une erreur de 0,4683. RK4 pour un pas jusqu'à t=0,5t=0{,}5t=0,5 : k1=1k_1=1k1​=1, k2=1,25k_2=1{,}25k2​=1,25, k3=1,3125k_3=1{,}3125k3​=1,3125, k4=1,65625k_4=1{,}65625k4​=1,65625, donc y=1+0,56(1+2,5+2,625+1,65625)=1,6484y=1+\frac{0{,}5}{6}(1+2{,}5+2{,}625+1{,}65625)=1{,}6484y=1+60,5​(1+2,5+2,625+1,65625)=1,6484, contre le vrai e0,5=1,6487e^{0{,}5}=1{,}6487e0,5=1,6487.
  • Euler : yn+1=yn+h f(tn,yn)y_{n+1}=y_n+h\,f(t_n,y_n)yn+1​=yn​+hf(tn​,yn​), précision d'ordre 1.
  • RK4 : quatre pentes par pas combinées avec les poids 1, 2, 2, 1 ; précision d'ordre 4.
  • Erreur de troncature : ce que l'on perd en avançant par pas au lieu de résoudre exactement.
Un pas plus petit n'est pas gratuitDiviser le pas par deux double le nombre de pas. Au-delà d'un certain point, l'erreur d'arrondi grandit alors que l'erreur de troncature ne compte plus, et certaines équations raides divergent si le pas n'est pas assez petit. Comparez deux tailles de pas pour estimer l'erreur avant de vous fier à un résultat.

Lab : ce qui est noté

  • Deux pas d'Euler15 pts
  • L'erreur d'Euler15 pts
  • Un pas de RK420 pts
  • Ordres de précision10 pts
  • Diviser le pas par deux15 pts
  • La boucle d'Euler10 pts
  • Pourquoi RK4 l'emporte sur Euler15 pts
0/ 7 traités
Exercices
1Réponse numérique15 ptsSans réponse

Considérons y′=yy'=yy′=y avec y(0)=1y(0)=1y(0)=1 et le pas h=0,5h=0{,}5h=0,5. Faites deux pas d'Euler et donnez y2y_2y2​ (l'estimation de y(1)y(1)y(1)).

y2=y_2 =y2​=accepté : ± 0.001
2Réponse numérique15 ptsSans réponse

Considérons y′=yy'=yy′=y avec y(0)=1y(0)=1y(0)=1 et le pas h=0,5h=0{,}5h=0,5. La solution exacte est y(1)=e=2,7183y(1)=e=2{,}7183y(1)=e=2,7183. De combien l'estimation d'Euler y2=2,25y_2=2{,}25y2​=2,25 s'en écarte-t-elle ?

error=\text{error} =error=accepté : ± 0.001
3Réponse numérique20 ptsSans réponse

Considérons y′=yy'=yy′=y avec y(0)=1y(0)=1y(0)=1 et le pas h=0,5h=0{,}5h=0,5. Faites un pas de RK4 depuis t=0t=0t=0 et donnez y1y_1y1​, l'estimation de y(0,5)y(0{,}5)y(0,5), à 4 décimales. Pour f(t,y)=yf(t,y)=yf(t,y)=y : k1=ynk_1=y_nk1​=yn​, k2=yn+h2k1k_2=y_n+\frac{h}{2}k_1k2​=yn​+2h​k1​, k3=yn+h2k2k_3=y_n+\frac{h}{2}k_2k3​=yn​+2h​k2​, k4=yn+hk3k_4=y_n+hk_3k4​=yn​+hk3​.

y1=y_1 =y1​=accepté : ± 0.0002
4Choix10 ptsSans réponse

Quels sont les ordres de précision de la méthode d'Euler et de RK4 ?

5Réponse numérique15 ptsSans réponse

La méthode d'Euler a une erreur de 0,08 avec le pas h=0,1h=0{,}1h=0,1. Quelle erreur attendre à peu près avec h=0,05h=0{,}05h=0,05 ?

error=\text{error} =error=accepté : ± 0.005
6Remettre les étapes dans l'ordre10 ptsSans réponse

Mettez dans l'ordre les étapes d'une itération d'Euler.

Faites glisser pour réordonner, ou placez le focus sur un élément, Espace pour le soulever, les flèches pour le déplacer et Espace pour le déposer.

  1. 1Mettre à jour y←y+h⋅pentey\leftarrow y+h\cdot\text{pente}y←y+h⋅pente
  2. 2Partir des valeurs initiales t0t_0t0​ et y0y_0y0​
  3. 3Avancer le temps t←t+ht\leftarrow t+ht←t+h et recommencer
  4. 4Calculer la pente f(t,y)f(t,y)f(t,y) au point courant
7Expliquer avec des mots15 ptsSans réponse

En deux ou trois phrases, expliquez pourquoi RK4 est généralement plus précis qu'Euler pour un même pas et ce que cela coûte.

Mode mathsSaisie au clavier ou en LaTeXExercice 1 sur 7 · Ctrl ⏎ pour vérifier

Connectez-vous pour exécuter votre code.

Tous les cours sont gratuits à lire. Créez un compte ou connectez-vous pour exécuter du code, lancer les tests et soumettre ce lab.

  • IDE dans le navigateur avec terminal bash — rien à installer
  • Correction instantanée, XP et votre place dans le parcours
Créer un compteSe connecter
OU
Continuer avec GitHub