NextTimePeriod (FPScript)

21.09.2021

Recherche dans un ensemble de données avec des valeurs de temps calendaire pour la valeur suivante qui se trouve dans un segment de temps périodique.

Syntaxe

NextTimePeriod(DataSet, Criterion, [ Position ], LowerBound, UpperBound [ , Direction = EVENT_RIGHT ])

 

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

Section

Description

DataSet

L'ensemble de données avec les valeurs de temps calendaire dans lequel on recherche des périodes.

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

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.

Criterion

Précise sur quel élément de date la recherche doit être basée.

L'argument Criterion peut avoir les valeurs suivantes :

Constante

Signification

SECOND

Seconde dans la minute (0,0 à 59,9999)

MINUTE

Minute dans l'heure 0,0 à 59,9999)

HOUR

Heure de la journée (0,0 à 23,9999)

DAY

Jour du mois (1 à 31)

WEEKDAY

Jour de la semaine (0 pour le dimanche à 6 pour le samedi, au lieu de valeurs numériques, vous pouvez également utiliser les constantes SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY et SATURDAY ).

MONTH

Mois de l'année (1 à 12)

YEAR

Année (1970 à 3000)

DAYOFYEAR

Jour de l'année (1 à 366)

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é.

Position

Si vous recherchez dans un signal, il s'agit de la valeur X où la recherche doit commencer. La valeur elle-même n'est pas incluse dans la recherche. Si vous recherchez une série de données, il s'agit de l'index de la valeur où la recherche doit commencer. L'index lui-même n'est pas inclus dans la recherche. Un indice négatif détermine une position par rapport à la fin de l'ensemble de données. Si vous omettez l'argument ou passez la valeur Empty, la recherche commence au début ou à la fin de l'ensemble de données, selon le sens de la recherche. La première ou la dernière valeur de l'ensemble de données n'est prise en compte que si vous omettez l'argument ou passez la valeur Empty.

Les structures de données autorisées sont Scalaire. Tous les types de données numériques sont autorisés. L'unité doit être compatible avec celle du paramètre DataSet .

Pour les types de données complexes, un nombre est formé.

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.

LowerBound

Spécifie la limite inférieure du segment temporel. Si vous spécifiez une valeur avec une unité, cette unité doit correspondre à l'élément de date sélectionné.

Les structures de données autorisées sont Scalaire. Tous les types de données réels sont autorisés.

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.

UpperBound

Spécifie la limite supérieure du segment temporel. Si vous spécifiez une valeur avec une unité, cette unité doit correspondre à l'élément de date sélectionné.

Les structures de données autorisées sont Scalaire. Tous les types de données réels sont autorisés.

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.

Direction

Définit la direction de recherche de la fonction.

L'argument Direction peut avoir les valeurs suivantes :

Constante

Signification

EVENT_RIGHT

Chercher à droite.

EVENT_LEFT

Chercher à gauche.

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 EVENT_RIGHT .

Remarques

Le résultat est toujours du type de données Temps calendaire.

Dans le cas des signaux et des séries de signaux, la composante X est recherchée.

Dans le cas où LowerBound est inférieure ou égale à UpperBound une valeur se trouve dans l'intervalle si elle est supérieure ou égale à LowerBoundet inférieure ou égale à UpperBound. Si LowerBound est spécifié comme étant supérieur à UpperBound une valeur se trouve dans l'intervalle si elle est supérieure ou égale à LowerBoundou inférieure ou égale à UpperBound. Cela équivaut approximativement à un complément.

Pour les éléments de date SECOND, MINUTE et HOUR vous pouvez spécifier les limites d'intervalle comme des valeurs à virgule flottante.

Disponible dans

FlexPro Basic, Professional, Developer Suite

Exemples

NextTimePeriod(TimeSignal, SECOND, , 3.5, 12.3)

Renvoie l'indice de la première valeur du signal "TimeSignal", qui se situe dans l'intervalle [3,5, 12,3] secondes de chaque minute.

TimeSignal[[NextTimePeriod(TimeSignal, SECOND, 5.5 s, 200 ms, 600 ms, EVENT_LEFT)]]

Recherche dans le signal "TimeSignal" à partir de la position X = 5,5 s à gauche la valeur suivante qui se trouve dans l'intervalle [0,2, 0,6] secondes de chaque minute. Le résultat est la valeur Y de la position trouvée.

Voir aussi

Fonction TimePeriods

Fonction NextValueInInterval

Fonction NextValueAboveLevel

Fonction NextValueBelowLevel

Fonction ValuesAboveLevel

Fonction ValuesBelowLevel

Fonction ValuesInInterval

Objet d'analyse Isolation d'événements

Partager l’article ou envoyer par mail :

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