Bonjour à tous voila je dois faire dans le cadre d'un rendu de tp en traitement du signal l'affichage en python 2.7 d'une fonction porte periodique sur 2pi.
Le prof nous a donné un starter avec la fonction porte deja prete sauf que quand je veux l'afficher cela ne me fait pas du tout une fonction porte . Voici ce qu'il nous a preparé:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import numpy as np
import matplotlib.pyplot as plt
 
def porte():
 
    # fonction porte 2pi prediodique sur 6*pi
    t= np.linspace(0.6*np.pi,200)
    s = np.zeros(np.size(t))
    ind = np.argwhere(t>np.pi)
    u = ind[0][0]
    s[0:u] = 1.0
    s[2*u:3*u] = 1.0
    s[4*u:5*u] = 1.0  
    s = s -0.5 
 
    return t, s
 
def temps(binf, bsup, nb) :
    # calcul du'ne vecteur de temps
    # qui va de binf à bsup en prenant nb points
    t= np.linspace(float(binf),float(bsup),nb)
 
    return t


puis moi je fais ca pour afficher :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import numpy as np
import matplotlib.pyplot as plt
 
import tp1
 
t,porte = tp1.porte()
 
 
 
 
titre = "fonction porte"
label_x = "t"
label_y = "porte"
 
plt.plot(t,porte)
plt.title(titre)
plt.xlabel(label_x)
plt.ylabel(label_y)
plt.show()

la la focntion afficher n'est pas une fonction porte .
Merci pour votre aide.