STFTSpectrum (FPScript)
Calcule le spectre temps-fréquence avec une transformée de Fourier à court terme (STFT).
Syntaxe
STFTSpectrum(Signal, [ SpectrumType = SPECTRUM_DBNORM ], [ Window = WIN_HANNING ], [ Adjustment ], [ SegmentLength = 0 ], [ OverlapOrGap = 50 ], [ FFTLength = 0 ], [ dBLimit = 0 ] [ , MaxFrequencies = 0 ])
La syntaxe de la fonction STFTSpectrum se compose des éléments suivants :
Section |
Description |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Signal |
Les données à analyser. Les données doivent avoir un taux d'échantillonnage constant et ne doivent pas contenir de valeurs invalides (void). Les structures de données autorisées sont Séries de données et Signal. Tous les types de données réels sont autorisés, sauf Temps calendaire et Période de temps. Les valeurs invalides ne sont pas autorisées dans cet argument. Des restrictions supplémentaires s'appliquent à la composante X.Les valeurs doivent avoir un espacement positif constant. Les valeurs invalides ne sont pas autorisées dans cet argument. Si l'argument est une liste, alors la fonction est exécutée pour chaque élément de la liste et le résultat est également une liste. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SpectrumType |
Le format spectral à calculer. L'argument SpectrumType peut avoir les valeurs suivantes :
Si l'argument n'est pas spécifié, il est défini à la valeur par défaut SPECTRUM_DBNORM . |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Window |
La fenêtre de données fixe ou ajustable à appliquer aux données. L'argument Window peut avoir les valeurs suivantes :
Si l'argument n'est pas spécifié, il est défini à la valeur par défaut WIN_HANNING . |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Adjustment |
La largeur de Fourier unilatérale comme un multiple de l'intervalle de fréquence. La plage de validité est spécifique à la fenêtre entre 1,0 et 6,0. La valeur par défaut est de 1,5 pour une fenêtre d'observation cosinus et de 3,0 pour toutes les autres fenêtres de données ajustables. Les structures de données autorisées sont Scalaire. Tous les types de données réels sont autorisés. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SegmentLength |
La durée de chaque FFT. La plage valable est de 2 à la longueur des données / 2. La valeur par défaut est 0, ce qui fixe la longueur du segment au double de la racine carrée de la longueur des données, arrondie à la puissance deux supérieure. Les structures de données autorisées sont Scalaire. Tous les types de données entiers sont autorisés. Si l'argument n'est pas spécifié, il est défini à la valeur par défaut 0 . |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
OverlapOrGap |
Si cet argument est spécifié comme un nombre positif, alors il spécifie le pourcentage de chevauchement des segments de données individuels. S'il est spécifié comme un nombre négatif, alors son montant spécifie l'écart entre les segments de données individuels en échantillons. Les structures de données autorisées sont Scalaire. Tous les types de données réels sont autorisés. La valeur doit être inférieure ou égale à 95. Si l'argument n'est pas spécifié, il est défini à la valeur par défaut 50 . |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
FFTLength |
La longueur de la transformée de Fourier. Si la longueur FFT spécifiée est supérieure à la longueur du segment, des zéros sont ajoutés. La plage valable se situe entre la longueur du segment et la longueur maximale de la FFT. La valeur par défaut est 0, ce qui définit la longueur de la FFT égale à la longueur du segment. Les structures de données autorisées sont Scalaire. Tous les types de données entiers sont autorisés. La valeur doit être supérieure ou égale à 0 et inférieure ou égale à 2147483648. Si l'argument n'est pas spécifié, il est défini à la valeur par défaut 0 . |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
dBLimit |
La ligne de base en dB à appliquer à un spectre en dB. La plage est comprise entre 1,0 dB et 120,0 dB, ou 0 pour aucune ligne de base. Les structures de données autorisées sont Scalaire. Tous les types de données réels sont autorisés. L'argument est transformé dans l'unité dB. La valeur doit être supérieure ou égale à 0.0 dB et inférieure ou égale à 120.0 dB. Si l'argument n'est pas spécifié, il est défini à la valeur par défaut 0 . |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MaxFrequencies |
Le nombre maximum de valeurs de fréquence dans la STFT (spectre PSD normalisé en puissance uniquement). La plage est de 10 à 10000, ou 0 pour aucune limite. Les structures de données autorisées sont Scalaire. Tous les types de données réels sont autorisés. Si l'argument n'est pas spécifié, il est défini à la valeur par défaut 0 . |
Remarques
Le résultat a toujours la structure de données Série de signaux avec composante Z.
La composante X contient les fréquences et la composante Z contient les temps de départ des segments. Si l'argument Signal est une série de données, alors la composante X du résultat contient les fréquences normalisées de Nyquist et la composante Z contient les valeurs d'indice des débuts de segments.
Le graphique suivant visualise les réglages de la longueur des segments, du recouvrement et de la longueur de la FFT :
Disponible dans
FlexPro Professional, Developer Suite
Exemples
TransposeMatrix(STFTSpectrum(Signal, SPECTRUM_DBNORM, WIN_HANNING + WIN_NORMALIZEPOWER, 2, 256, 50, 0, 20, 0))
Calcule le spectre STFT d'un signal et transpose ensuite le résultat afin que des fréquences soient attribuées à la composante Z. Le type de spectre choisi est le dB normalisé. La fenêtre appliquée est Cos2 Hanning -31 dB W=2. La longueur de la FFT est fixée à la longueur du segment avec une valeur de 256. Il s'agit d'un exemple tiré du Tutoriel Analyse Spectrale Temps-fréquence.
Voir aussi
Objet d'analyse Spectre temps-fréquence
Short-Time Fourier Transform (STFT)