#1
Voilà ce que @Kibest demande: en gros il dispose d'un DM de programmation en python qui se base sur des calculs d'Euler (ahhh souvenir souvenir)
Je mets ici son code et ses interrogations.
Ainsi que le DM lui-même
Je mets ici son code et ses interrogations.
Salut magellan !
Je suis étudiant en classe prépa TSI, et pour demain j'ai un programme sur python à rendre, je t'avoue que je ne suis pas vraiment talentueux en programmation.... Est-ce que tu pourrais m'aider et m'expliquer stp ?
Il y a 2 exercices, ces 2 exercices sont en rapport avec la méthode Euler, le premier exercice portait sur faire un programme devant afficher des graphiques de vitesse, accélération, déplacement, d'un skieur qui descendait une piste, j'y suis plutôt bien arrivé, même si ma dernière courbe n'est pas vraiment celle souhaitée (elle est à peine décalée de ce qu'elle devrait être...). Et le deuxième exercice porte sur "Euler et la loi normale".
J'essais de t'envoyer mon programme que j'ai fait avec python et mon sujet de DM.
Je te remercie par avance d'ailleurs.
J'ai fait un lien mediafire, j'espère que ça va marcher, je ne sais pas comment envoyer des fichiers directement sur la conversation....
http://www.mediafire.com/folder/k1lb2yo7l6e5l/DM_Euler
Je suis étudiant en classe prépa TSI, et pour demain j'ai un programme sur python à rendre, je t'avoue que je ne suis pas vraiment talentueux en programmation.... Est-ce que tu pourrais m'aider et m'expliquer stp ?
Il y a 2 exercices, ces 2 exercices sont en rapport avec la méthode Euler, le premier exercice portait sur faire un programme devant afficher des graphiques de vitesse, accélération, déplacement, d'un skieur qui descendait une piste, j'y suis plutôt bien arrivé, même si ma dernière courbe n'est pas vraiment celle souhaitée (elle est à peine décalée de ce qu'elle devrait être...). Et le deuxième exercice porte sur "Euler et la loi normale".
J'essais de t'envoyer mon programme que j'ai fait avec python et mon sujet de DM.
Je te remercie par avance d'ailleurs.
J'ai fait un lien mediafire, j'espère que ça va marcher, je ne sais pas comment envoyer des fichiers directement sur la conversation....
http://www.mediafire.com/folder/k1lb2yo7l6e5l/DM_Euler
Python:
import matplotlib.pyplot as plt
import numpy as np
from math import *
def MethodeEuler(e,a,b,y0,N):
# Données : e est une fonction, a,b,y0 sont des réels et N un entier naturel
# Résultat : retourne une liste de deux listes de longueur N+1:
# la 1ère correspond au découpage de l'intervalle [a,b]
# la 2ème correspond à une approximation de la fonction y
# solution de l'équation différentielle y'=e(y,t) selon la méthode d'Euler
# a et b sont les bornes de y, y0 est la condition initiale
# N est le nombre d'itérations souhaitées dans la méthode d'Euler
y=np.zeros(N+1)
t=np.zeros(N+1)
y[0]=y0
t[0]=a
h=(b-a)/N
for i in range(1,N+1):
y[i]=y[i-1]+h*e(y[i-1],t[i-1])
t[i]=t[i-1]+h
return t,y
yp=lambda y,t:np.exp(-(t**2)/2)
a=0
b=200
y0=0
N=200
plt.subplot(2,1,1)
approx=MethodeEuler(yp,a,b,y0,N)
x=approx[0]
euler=approx[1]
P=0.5+(1/sqrt(2*pi))*euler
print(P)
plt.plot(x,P,label="Solution exacte")
#plt.scatter(x,euler,label="Approximation d'Euler")
plt.title('Comparaison Euler et solution exacte pour N=5')
plt.xlabel('Valeur de x')
plt.ylabel('Ordonnées')
#plt.legend(loc='upper left')
plt.grid()
plt.show()
Fichiers joints
-
560.5 KB Affichages: 14