msicpe.tsa package
- msicpe.tsa.bin2data(sb, dtype='int')
Convert binary data sb into array of type dtype
- Paramètres:
sb (np.array) – binary data
dtype (str, optional) – datatype. Defaults to “int”.
- msicpe.tsa.canal_test(init=None, filtered=False)
- Modélisation d’un canal de transmission ayant un bruit blanc additif gaussien centré réduit sur une bande passante limitée
pour un signal nul en entrée.
- Paramètres:
init (number) – Valeur d’initialisation de la graine aléatoire https://numpy.org/doc/2.0/reference/random/generated/numpy.random.seed.html
filtered (boolean) – Indique si la sortie brf est filtrée ou non (sortie à ne pas filtrer pour estimer la DDP et sortie a filtrer pour estimer la DSP)
- Renvoie:
brf – Séquence de bruit de 100000 points.
- Type renvoyé:
ndarray
Notes
Ce programme est utilisé pour générer un bruit blanc gaussien centré réduit sur une bande passante limitée.
Exemple
>>> from msicpe.tsa import canal_test >>> canal_test()
- msicpe.tsa.carbr(moy, ecartype, N)
Estime la densité de probabilité de la somme d’un signal carré de fréquence 110 Hz et d’un bruit blanc gaussien, échantillonné à 100 KHz.
- Paramètres:
moy (float) – Moyenne du bruit.
ecartype (float) – Écart-type du bruit.
N (int) – Nombre de points du signal à analyser.
Affiche le mélange signal + bruit et la densité de probabilité estimée.
Notes
Cette fonction estime la densité de probabilité de la somme d’un signal carré et d’un bruit blanc gaussien, supposant que le signal carré a une fréquence de 110 Hz et est échantillonné à 100 KHz.
Exemple
>>> from msicpe.tsa import carbr >>> carbr(0, 1, 1000)
- msicpe.tsa.data2bin(s, dtype='int8')
Convert data s of type dtype into binary representation
- Paramètres:
s (np.array) – data
dtype (str, optional) – datatype. Defaults to “int8”.
- msicpe.tsa.ddpbr2(ecartype, N)
Estimation de la densité de probabilité d’un bruit gaussien élevé au carré, de moyenne nulle.
- Paramètres:
ecartype (float) – Écart-type du bruit.
N (int) – Nombre de points à générer (doit être supérieur à 500).
Affiche
400 points du bruit élevé au carré.
La densité de probabilité estimée.
La densité de probabilité théorique en fonction de l’écart-type choisi.
Notes
Cette fonction estime la densité de probabilité d’un bruit gaussien élevé au carré, supposant que le bruit initial a une bande passante de 2000 Hz et est échantillonné à 10 KHz.
Exemple
>>> from msicpe.tsa import ddpbr2 >>> ddpbr2(1, 1000)
- msicpe.tsa.ddpbr2f(ecartype, N)
Estimation de la densité de probabilité d’un bruit gaussien de moyenne nulle, élevé au carré et filtré passe-bas.
- Paramètres:
ecartype (float) – Écart-type du bruit.
N (int) – Nombre de points à générer (doit être supérieur à 2500).
Le bruit de départ a une bande passante de 2000 Hz et est échantillonné à 10 KHz.
Pendant l’exécution du programme, la fréquence de coupure du filtre passe-bas est choisie.
Affiche
400 points du bruit initial.
400 points du bruit élevé au carré.
La densité spectrale du bruit élevé au carré.
Le gain complexe du filtre passe-bas choisi.
Le bruit élevé au carré filtré passe-bas.
La densité de probabilité estimée du bruit élevé au carré filtré.
Notes
Cette fonction estime la densité de probabilité d’un bruit gaussien élevé au carré, filtré par un filtre passe-bas.
Exemple
>>> from msicpe.tsa import ddpbr2f >>> ddpbr2f(1, 3000)
- msicpe.tsa.detsin(M, ssb)
Détection d’un signal périodique dans un bruit.
Le signal est un signal sinusoïdal de fréquence 227 Hz à phase équipartie. Le bruit est un bruit blanc gaussien centré, filtré dans la bande 150-300 Hz. On dispose d’un signal de référence périodique de même période que le signal.
Le tout est échantillonné à 1 KHz.
- Paramètres:
M (int) – Nombre de points à analyser (> 100).
ssb (float) – Rapport signal sur bruit en dB (< 20 dB).
Affiche
Le mélange signal + bruit.
Le signal de référence.
L’autocorrélation estimée du mélange signal + bruit.
L’intercorrélation estimée entre signal + bruit et la référence.
Notes
Cette fonction est conçue pour détecter un signal sinusoïdal périodique dans un environnement de bruit, en utilisant un signal de référence pour comparer et extraire le signal d’intérêt.
Exemple
>>> from msicpe.tsa import detsin >>> detsin(1000, 15)
- msicpe.tsa.fenetre(nfen=40)
Programme fenetre.
Étude des fenêtres de pondération.
- Ce module permet de :
Visualiser l’allure de 6 fenêtres de pondération.
Afficher leur spectre en échelle linéaire.
Afficher leur spectre en échelle logarithmique.
Les fenêtres ont une longueur de nfen points.
- Paramètres:
nfen (int) – Longueur des fenêtres à étudier.
Affiche
——-
Les 6 fenêtres de pondération.
L’autocorrélation de chacune des fenêtre de pondération
Le spectre de l’autocorrélation de chaque fenêtre en échelle linéaire.
Le spectre de l’autocorrélation de chaque fenêtre en échelle logarithmique.
Notes
Ce programme est utilisé pour analyser visuellement et spectrale les caractéristiques des fenêtres de pondération, souvent utilisées en traitement du signal pour des tâches comme la fenêtrage de signaux temporels.
Exemple
>>> from msicpe.tsa import fenetre >>> fenetre(256)
- msicpe.tsa.genbrfill()
Génération d’un bruit blanc gaussien centré de variance unitaire, filtré passe-bas de 100000 points. Affiche la séquence de bruit générée.
- Renvoie:
brf – Séquence de bruit filtré passe-bas de 100000 points.
- Type renvoyé:
ndarray
Notes
Ce programme est utilisé pour générer un bruit blanc gaussien centré, le filtrer avec un filtre passe-bas, et afficher la séquence de bruit résultante.
Exemple
>>> from msicpe.tsa import genbrfill >>> genbrfill()
- msicpe.tsa.kurtosis(x, flag=1, dim=None)
Calcul le kurtosis.
- Paramètres:
X (array_like) – Les valeurs pour lesquelles la kurtosis doit être calculée. Pour un vecteur, X est le quatrième moment central de X, divisé par la quatrième puissance de son écart-type. Pour une matrice, K est un vecteur ligne contenant la kurtosis de chaque colonne de X. Pour les tableaux N-D, kurtosis fonctionne le long de la première dimension non-singleton.
FLAG (int, optional) – Si FLAG vaut 0, ajuste la kurtosis pour le biais. Si FLAG vaut 1 (par défaut), la kurtosis n’est pas ajustée pour le biais.
DIM (int, optional) – La dimension de X le long de laquelle calculer la kurtosis. Si non spécifié, la kurtosis est calculée le long de la première dimension non-singleton.
- Renvoie:
K – La kurtosis des valeurs dans X.
- Type renvoyé:
ndarray
Notes
kurtosis traite les NaN comme des valeurs manquantes et les ignore dans le calcul.
Voir aussi
numpy.mean
Calculer la moyenne.
numpy.var
Calculer la variance.
numpy.std
Calculer l’écart-type.
Exemple
>>> import numpy as np >>> from msicpe.tsa import kurtosis >>> data = np.random.randn(1, 1000) >>> kurtosis(data) array([2.87409513])
- msicpe.tsa.load_signal(fileName, dataKey=None)
LoadSignal charge le signal échantillonné et sa fréquence d’échantillonnage d’un fichier fourni.
Puis, il est transformé comme suit :
sig = int8(128*(sig-np.mean(sig)))
Enfin, il est sous-échantilloné pour réduire le nombre de points
- Paramètres:
fileName (string) – chemin vers le fichier contenant le signal
dataKey (string, optional) – clé du signal à extraire du fichier (car les fichiers « Sensor_data.csv » et « rayonnement-solaire-vitesse-vent-tri-horaires-regionaux » contiennent plusieurs clés)
- Renvoie:
Fs (float64) – fréquence d’échantillonagé du signal
sig (ndarray) – signal lu dans le fichier
- msicpe.tsa.sptheo(Q, method, fenetre=None)
Calcule dans le cadre du TP Estimation spectrale :
Gth : la valeur en dB de la DSPM du bruit blanc filtré entre 0 et 0,5.
Gbiais : la valeur en dB de Gth convolué par la grandeur régissant le biais attaché à la “method”.
f : un vecteur fréquence réduite de même taille que Gth et Gbiais.
- Paramètres:
Q (int) – Pour “simple”, représente la longueur de l’échantillon analysé. Pour “moyenne” ou “welch”, représente la longueur d’une tranche.
method ({“simple”, “moyenne”, “welch”}) – Méthode d’estimation spectrale à utiliser.
fenetre (str, optional) – Nom de la fenêtre à utiliser si method=”welch”. Ignoré pour “simple” et “moyenne”.
- Renvoie:
Gth (ndarray) – Valeur en dB de la DSPM du bruit blanc filtré entre 0 et 0,5.
Gbiais (ndarray) – Valeur en dB de Gth convolué par la grandeur régissant le biais.
f (ndarray) – Vecteur fréquence réduite.
Notes
Cette fonction calcule différentes valeurs théoriques dans le cadre de l’estimation spectrale, en fonction de la méthode choisie (“simple”, “moyenne” ou “welch”) et des paramètres associés.
Exemple
>>> from msicpe.tsa import sptheo >>> sptheo(1024, 'welch', 'hamming')
- msicpe.tsa.tracord(x)
Calcul des bornes pour le tracé d’une courbe.
Cette fonction calcule les bornes minimale et maximale pour le tracé d’une courbe représentée par le vecteur x. Les bornes sont calculées en fonction des valeurs minimales et maximales de x, avec des ajustements spécifiques pour assurer une visualisation appropriée.
- Paramètres:
x (array_like) – Vecteur contenant les données de la courbe.
- Renvoie:
ormin (float) – Borne minimale pour le tracé de la courbe. Si la valeur minimale de x est inférieure à zéro, ormin est établi à 1.1 fois cette valeur. Si la valeur minimale est zéro, ormin est fixé à zéro. Si la valeur minimale est supérieure à zéro, ormin est établi à 0.9 fois cette valeur.
ormax (float) – Borne maximale pour le tracé de la courbe. Si la valeur maximale de x est inférieure à zéro, ormax est établi à 0.9 fois cette valeur. Si la valeur maximale est zéro, ormax est fixé à zéro. Si la valeur maximale est supérieure à zéro, ormax est établi à 1.1 fois cette valeur.
Notes
Cette fonction est utile pour ajuster automatiquement les bornes d’un tracé en fonction des données fournies, en assurant que la courbe reste bien visible sans être tronquée par les limites du graphique.
Exemple
>>> from msicpe.tsa import tracord >>> x = [1, 2, 3, 4, 5] >>> ormin, ormax = tracord(x) >>> print(ormin, ormax) 0.9 1.1
- msicpe.tsa.transmit(S, canal_id: int, powB=1)
TRANSMIT modélise un canal de transmission bruité.
- Paramètres:
S (array_like) – signal à transmettre
canal_id (int) – identifiant du canal de transmission (entre 0 et 15)
powB (float, optional) – puissance du bruit de transmission (valeur par défaut: 1)
- Renvoie:
X – signal dégradé après transmission
- Type renvoyé:
ndarray
- msicpe.tsa.whitening(x, color)
Cette fonction réalise le blanchiment d’un signal donne, sur toute la plage fréquentielle de 0 à 0.5 (en fréquences réduites).
- Paramètres:
x (numpy array) – Signal d’entrée (doit être un tableau 1D).
color (string) – Couleur du bruit (rouge, rose, blanc, bleu, violet)
- Renvoie:
x_white – Signal spectralement blanchi.
- Type renvoyé:
numpy array