Resample (FPScript)

21.09.2021

Augmente ou réduit le taux d'échantillonnage d'un ensemble de données.

Syntaxe

Resample(DataSet, Factor [ , Method = RESAMPLE_FFT ])

 

La syntaxe de la fonction Resample se compose des éléments suivants :

Section

Description

DataSet

L'ensemble de données pour lequel le nombre de valeurs doit être réduit.

Les structures de données autorisées sont Séries de données, Matrice de données, Signal et Série de signaux. Tous les types de données numériques sont autorisés.

Des restrictions supplémentaires s'appliquent à la composante X.Les valeurs doivent avoir un espacement constant.

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.

Factor

Spécifie le facteur avec lequel le taux d'échantillonnage, et donc le nombre de valeurs dans le résultat, doit être modifié. Les valeurs inférieures à un réduisent le taux d'échantillonnage, et les valeurs supérieures à un l'augmentent.

Les structures de données autorisées sont Scalaire. Tous les types de données réels sont autorisés, sauf Temps calendaire et Période de temps.

La valeur doit être supérieure à 0.

Si l'argument est une liste, alors son premier élément est pris. S'il s'agit à nouveau d'une liste, le processus est répété.

Method

Détermine la méthode utilisée pour le rééchantillonnage.

L'argument Method peut avoir les valeurs suivantes :

Constante

Signification

RESAMPLE_LINEAR

Le rééchantillonnage se fait par interpolation linéaire.

RESAMPLE_FFT

Le rééchantillonnage se fait en utilisant la FFT Exact-n.

Si l'argument est une liste, alors son premier élément est pris. S'il s'agit à nouveau d'une liste, le processus est répété.

Si l'argument n'est pas spécifié, il est défini à la valeur par défaut RESAMPLE_FFT .

Remarques

Si DataSet ne contient pas de composante X, alors les valeurs X sont automatiquement générées en commençant par zéro et avec un incréments de un. Si il contient une composante X, celle-ci doit avoir un incrément constant, c'est-à-dire que les données doivent être échantillonnées en utilisant un taux constant. Le résultat est toujours un signal ou une série de signaux.

Pour le rééchantillonnage par FFT, le signal temporel est d'abord transformé dans le domaine fréquentiel. Pour augmenter le taux d'échantillonnage, des zéros sont alors ajoutés au spectre, et pour réduire le taux d'échantillonnage, une partie du spectre est coupée en conséquence. Il est ensuite transformé à nouveau en domaine temporel. Le rééchantillonnage par la transformée de Fourier donne un résultat presque idéal, car aucune composante de signal à haute fréquence n'est ajoutée lorsque le taux d'échantillonnage est augmenté et toutes les composantes spectrales jusqu'à la nouvelle fréquence de Nyquist sont conservées lorsque le taux d'échantillonnage est diminué. La reconstruction exacte du signal de temps original n'est cependant pas toujours possible en raison de l'effet de fuite de la FFT.

Idéalement, le nouveau nombre de valeurs est (NumberOfRows(DataSet)-1) * Factor + 1, arrondi à l'entier suivant. Toutefois, cela n'est pas toujours possible pour la méthode FFT (pour les valeurs non entières de Factor).

Disponible dans

FlexPro Basic, Professional, Developer Suite

Exemples

Resample(Signal, 2)

Double le taux d'échantillonnage d'un signal en utilisant la méthode FFT.

Resample(Signal, 0.5, RESAMPLE_LINEAR)

Réduit de moitié le taux d'échantillonnage d'un signal en utilisant une interpolation linéaire.

Voir aussi

Fonction LinearInterpolation

Fonction DeltaCompress

Fonction Sample

Fonction Expand

Fonction Reduce

Objet d'analyse Échantillonnage de signal

Partager l’article ou envoyer par mail :

Vous serez probablement intéressé par les articles suivants :