BicubicSpline (FPScript)
Interpole un ensemble de données bidimensionnelles à partir une surface spline bicubique et échantillonne cette surface spline à des points définissables.
Syntaxe
BicubicSpline(Surface, NX, NZ, SamplingMode)
ou
BicubicSpline(DataMatrix, LocusX, LocusZ, NX, NZ, SamplingMode)
La syntaxe de la fonction BicubicSpline se compose des éléments suivants :
Section |
Description |
||||||
---|---|---|---|---|---|---|---|
Surface |
La matrice de données ou série de signaux avec une composante Z et un intervalle d'échantillonnage constant, qui est interpolée. Si les composantes X et Z sont manquantes, elles seront générées automatiquement. Les structures de données autorisées sont Matrice de données et Série de signaux. Tous les types de données numériques sont autorisés. 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. |
||||||
DataMatrix |
Matrice de données avec la composante Y de la série de signaux à interpoler. Si vous spécifiez une série de signaux, alors sa composante Y est utilisée. Les structures de données autorisées sont Matrice de données et Série de signaux. Tous les types de données numériques sont autorisés. Pour les types de données complexes, un nombre est formé. 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é. |
||||||
LocusX |
Séries de données avec la composante X de la série de signaux à interpoler. Si vous spécifiez un signal, alors sa composante Y est utilisée. Les structures de données autorisées sont Séries de données et Signal. Tous les types de données numériques sont autorisés. Pour les types de données complexes, un nombre est formé. 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é. |
||||||
LocusZ |
Séries de données avec la composante Z de la série de signaux à interpoler. Si vous spécifiez un signal, alors sa composante Y est utilisée. Les structures de données autorisées sont Séries de données et Signal. Tous les types de données numériques sont autorisés. Pour les types de données complexes, un nombre est formé. 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é. |
||||||
NX |
Spécifie le nombre total de points ou par intervalle X de la série de signaux. 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. 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é. |
||||||
NZ |
Spécifie le nombre total de points ou par intervalle Z de la série de signaux. 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. 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é. |
||||||
SamplingMode |
Spécifie comment la surface spline calculée doit être échantillonnée. L'argument SamplingMode peut avoir les valeurs suivantes :
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é. |
Remarques
Le résultat est toujours du type de données Virgule flottante de 64 bits.
Le résultat a la même unité que l'argument Surface.
Une surface spline modélisée se compose de polynômes bicubes qui sont ajoutés les uns aux autres pour fournir la variation le plus lisse possible.
La composante Y de l'ensemble de données à interpoler doit contenir au moins 3 x 3 valeurs.
En mode d'échantillonnage SPLINE_EQUIDISTANTSi l'on veut que les données soient interpolées, les composantes X et Z de l'ensemble de données à interpoler doivent être strictement croissantes. En mode d'échantillonnage SPLINE_INTERVALCependant, des valeurs X et Z strictement décroissantes sont également autorisées. Avant l'interpolation spline, les valeurs invalides (void) dans la matrice de données Y sont éliminées par interpolation linéaire.
Les illustrations suivantes montrent une surface spline bicubique et les données sur lesquelles elle est basée :
Disponible dans
FlexPro Basic, Professional, Developer Suite
Exemples
BicubicSpline({{0, 0, 0, 0}, {0, 1, 0, 0}, {0, 0, -1, 0}, {0, 0, 0, 0}}, 100, 100, SPLINE_EQUIDISTANT) |
Interpolation de la matrice de données par une surface spline bicubique. |
Voir aussi
Objet d'analyse Interpolation Spline
Objet d'analyse Interpolation de surface
Objet d'analyse Approximation 2D
Littérature
[1] "Hiroshi Akima": "A Method of Bivariate Interpolation and Smooth Surface Fitting Based on Local Procedures". Dans: "Communications of the ACM, Volume 17, Issue 1, Pages: 18 - 20". 1974.