0% ont trouvé ce document utile (0 vote)
8 vues2 pages

Python

Le document présente une implémentation de la méthode d'Euler pour résoudre une équation différentielle décrivant la hauteur d'eau en fonction du temps. Il définit une fonction f(t, h) et utilise une boucle pour mettre à jour les valeurs de temps et de hauteur jusqu'à un temps final spécifié. Les résultats sont stockés dans un DataFrame et la hauteur maximale à t = 11,45 h est affichée.

Transféré par

Boris Fouotsa El Boris
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
8 vues2 pages

Python

Le document présente une implémentation de la méthode d'Euler pour résoudre une équation différentielle décrivant la hauteur d'eau en fonction du temps. Il définit une fonction f(t, h) et utilise une boucle pour mettre à jour les valeurs de temps et de hauteur jusqu'à un temps final spécifié. Les résultats sont stockés dans un DataFrame et la hauteur maximale à t = 11,45 h est affichée.

Transféré par

Boris Fouotsa El Boris
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

import numpy as np

import pandas as pd

# Définition de la fonction f(t, h)

def f(t, h):

return t / h + 0.5 * h

# Méthode d'Euler

def methode_euler(t0, h0, dt, t_final):

# Initialisation des listes pour stocker les résultats

temps = [t0]

hauteurs = [h0]

# Initialisation des variables

t = t0

h = h0

# Boucle principale pour la méthode d'Euler

while t <= t_final:

# Calcul de f(t, h)

f_t_h = f(t, h)

# Mise à jour de h et t

if t + dt > t_final:

dt = t_final - t # Ajustement du pas de temps pour atteindre


t_final

h = h + dt * f_t_h

t = t + dt
# Stockage des résultats

[Link](t)

[Link](h)

# Création d'un DataFrame pour afficher les résultats

resultats = [Link]({"Temps (h)": temps, "Hauteur (m)":


hauteurs})

return resultats

# Paramètres initiaux

t0 = 0 # Temps initial (h)

h0 = 25 # Hauteur initiale (m)

dt = 2 # Pas de temps (h)

t_final = 11.45 # Temps final (h)

# Application de la méthode d'Euler

resultats = methode_euler(t0, h0, dt, t_final)

# Affichage des résultats

print(resultats)

# Affichage de la hauteur maximale à t = 11,45 h

hauteur_max = resultats["Hauteur (m)"].iloc[-1]

print(f"\nLa hauteur maximale d'eau à t = {t_final} h est :


{hauteur_max:.3f} m")

Vous aimerez peut-être aussi