Approximation (FPScript)
Approximation d'un modèle linéaire Y(X) à des données spécifiques selon la méthode de l'erreur quadratique minimale.
Syntaxe
Approximation(DataSet, Model)
ou
Approximation(Amplitude, Time, Model)
La syntaxe de la fonction Approximation se compose des éléments suivants :
Section |
Description |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
DataSet |
Le signal ou la série de données pour lesquels l'approximation doit être calculée. Si vous spécifiez une série de données, la composante X sera générée automatiquement. 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 la fonction est exécutée pour chaque élément de la liste et le résultat est également une liste. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Amplitude |
Une série de données avec la composante Y d'un signal. 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é. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Time |
Une série de données avec la composante X d'un signal. 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é. |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Model |
Spécifie la composition de la fonction modèle dont les coefficients sont déterminés par l'approximation. Vous pouvez spécifier des fonctions d'éléments personnalisés ou prédéfinis.
La fonction de modèle personnalisé est transmise sous la forme d'une série de chaînes de données. Par exemple, la fonction modèle Y = A + B * X + C * sin(2 * PI * X) est décrite par les séries de données {"1", "X", "sin(2*PI*X)"}.
La fonction modèle avec des fonctions d'éléments prédéfinies peut être formée en ajoutant les valeurs suivantes. Par exemple, si la fonction modèle souhaitée est A + B * X + C * X2, puis l'argument Model doit recevoir la valeur APPROX_C + APPROX_X + APPROX_X_2. Approximation calcule ensuite les coefficients inconnus A, B et C afin que la fonction de modèle se rapproche le plus possible du signal spécifié.
Les structures de données autorisées sont Scalaire et Séries de données. Les types de données pris en charge sont Entier de 16 bits, Entier de 32 bits et Chaîne de caractères. 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
Par conséquent, la fonction renvoie une série de données du type de données Virgule flottante de 64 bits.
Le nombre de valeurs est égal au nombre de fonctions élémentaires de la fonction modèle plus un.
La dernière valeur représente la mesure de la qualité de l'ajustement du Χ2 (Chi-carré). Il s'agit de la somme des carrés de tous les écarts de la fonction de modèle approchée par rapport aux données. Plus le Χ2 est petit, plus la fonction modèle trouvée se rapproche des données. Les autres valeurs des séries de données renvoient les coefficients des fonctions d'éléments utilisées dans la fonction modèle, où l'ordre correspond à celui du tableau ci-dessus.
L'illustration suivante montre les données mesurées d'une courbe caractéristique quadratique et son approximation :
Disponible dans
FlexPro Basic, Professional, Developer Suite
Exemples
Dim _c = Approximation(Signal, APPROX_C + APPROX_X + APPROX_X_2)
Signal(_c[0] + _c[1] * (Signal.X) + _c[2] * (Signal.X)^2., Signal.X)
Approximation d'un signal avec une fonction de modèle quadratique.
Dim _c = Approximation(Signal, {"1", "sin(2*PI*X)"})
Signal(_c[0] + _c[1] * sin(2 * PI * Signal.X), Signal.X)
Approximation d'un signal avec une fonction de modèle personnalisé Y(X) = A + B * Sin(2*PI*X).
Voir aussi
Objet d'analyse Approximation 2D
Littérature
[1] "Philip R. Bevington, D. Keith Robinson": "Data Reduction and Error Analysis for the Physical Sciences, 3rd Edition". "McGraw-Hill, New York",2003.ISBN 0-07-247227-8.