# TP 8 - RESEAUX - Programme 1 : mesure du nombre de traits n par unité de longueur (questions 4) ################################################################################## # Importation des bibliotèques import numpy as np import matplotlib.pyplot as plt import numpy.random as rd ################################################################################## # Entrées des valeurs expérimentales Lambda = 546.08e-9 # Longueur d'onde vert Hg alpha0_min_degré = # Nombre de degrés mesurés pour alpha0 minimum A COMPLETER alpha0_min_minute = # Nombre de minutes mesurées pour alpha0 minimum A COMPLETER alpha0_min = # alpha0 minimum converti en radian A COMPLETER alpha0_max_degré = # Nombre de degrés mesurés pour alpha0 maximum A COMPLETER alpha0_max_minute = # Nombre de minutes mesurées pour alpha0 maximum A COMPLETER alpha0_max = # alpha0 maximum converti en radian A COMPLETER alpha0 = (alpha0_min + alpha0_max)/2 # alpha0 moyen en radian deltaalpha0 = (alpha0_max - alpha0_min)/2 # demi-largeur de l'intervalle de variation de alpha0 en radian alpha1_min_degré = # Nombre de degrés mesurés pour alpha1 minimum A COMPLETER alpha1_min_minute = # Nombre de minutes mesurées pour alpha1 minimum A COMPLETER alpha1_min = # alpha1 minimum converti en radian A COMPLETER alpha1_max_degré = # Nombre de degrés mesurés pour alpha1 maximum A COMPLETER alpha1_max_minute = # Nombre de minutes mesurées pour alpha1 maximum A COMPLETER alpha1_max = # alpha1 maximum converti en radian A COMPLETER alpha1 = (alpha1_min + alpha1_max)/2 # alpha1 moyen en radian deltaalpha1 = (alpha1_max - alpha1_min)/2 # demi-largeur de l'intervalle de variation de alpha1 en radian ################################################################################## # Calcul de n et u(n) par simulation Monte-Carlo N = 100000 # Nombre d'expériences simulées n = np.zeros(N) # Initialisation du tableau dans lequel on stocke les N valeurs du nombre de traits par unité de longueur for i in range(0,N): # Pour chacune des N expériences alpha0i = rd.uniform(alpha0-deltaalpha0,alpha0+deltaalpha0) # Tirage aléatoire d'une valeur de alpha0 pour l'expérience i alpha1i = # Tirage aléatoire d'une valeur de alpha1 pour l'expérience i A COMPLETER Dmini = (alpha1i - alpha0i) # Angle de déviation minimum en radian pour l'expérience i n[i] = # Calcul du nombre de traits par mètre n pour l'expérience i A COMPLETER n = n/1000 # Conversion en nombre de traits par mm nmoy = np.mean(n) # Calcul de la moyenne des N valeurs de n un = np.std(n,ddof=1) # Calcul de l'écart-type u(n) print('n =',nmoy,'mm-1') print('u(n) =',un,'mm-1') ################################################################################## # Tracé de l'histogramme des N valeurs de n plt.title('Histogramme de n') plt.xlabel('n en mm-1') plt.ylabel('Effectifs') plt.hist(n,bins='rice') plt.grid() plt.show() ##################################################################################