Saltar navegación

Documentación de FlexPro 2025

Approximation

Aproxima un modelo lineal Y(X) a unos datos dados utilizando el método de mínimos cuadrados.

Sintaxis

Approximation(DataSet, Model)
o
Approximation(Amplitude, Time, Model)

 

La sintaxis de la función Approximation consta de los siguientes elementos:

Parte

Descripción

DataSet

La señal o serie de datos cuya aproximación se está calculando. Si especifica una serie de datos, el componente X se genera automáticamente.

Las estructuras de datos permitidas son Serie de datos y Señal. Se permiten todos los tipos de datos numéricos.

En los tipos de datos complejos se calcula un valor absoluto.

Si el argumento es una lista, la función se ejecuta para cada elemento de la lista y el resultado también es una lista.

Amplitude

Serie de datos con el componente Y de una señal. Si especifica una señal, se utiliza su componente Y.

Las estructuras de datos permitidas son Serie de datos y Señal. Se permiten todos los tipos de datos numéricos.

En los tipos de datos complejos se calcula un valor absoluto.

Si el argumento es una lista, se toma su primer elemento. Si se trata de nuevo de una lista, se repite el proceso.

Time

Serie de datos con el componente X de una señal. Si especifica una señal, se utiliza su componente Y.

Las estructuras de datos permitidas son Serie de datos y Señal. Se permiten todos los tipos de datos numéricos.

En los tipos de datos complejos se calcula un valor absoluto.

Si el argumento es una lista, se toma su primer elemento. Si se trata de nuevo de una lista, se repite el proceso.

Model

Determina la estructura de la función del modelo cuyos coeficientes vienen determinados por la aproximación. Puede especificar funciones de elemento personalizadas o predefinidas.

 

La función del modelo personalizada se transfiere como una serie de datos de cadenas. Por ejemplo, la función del modelo Y = A + B * X + C * sin(2 * PI * X) se describe mediante la serie de datos {"1", "X", "sin(2*PI*X)"}.

 

La función del modelo con funciones de elemento predefinidas puede formarse añadiendo los siguientes valores. Si, por ejemplo, la función del modelo deseada es A + B * X + C *X2, el argumento Model debe tener el valor APROX_C + APPROX_X + APPROX_X_2. Approximation calcula entonces los coeficientes desconocidos A, B y C para que la función del modelo se aproxime lo más posible a la señal especificada.

Constante

Significado

+ APPROX_C

1

+ APPROX_X

X

+ APPROX_X_2

X2

+ APPROX_X_3

X3

+ APPROX_X_4

X4

+ APPROX_X_5

X5

+ APPROX_X_6

X6

+ APPROX_X_7

X7

+ APPROX_X_8

X8

+ APPROX_X_9

X9

+ APPROX_X_10

X10

+ APPROX_X_11

X11

+ APPROX_X_12

X12

+ APPROX_REC

1/X

+ APPROX_REC2

1/X2

+ APPROX_REC3

1/X3

+ APPROX_SIN

sin(X)

+ APPROX_COS

cos(X)

+ APPROX_TAN

tan(X)

+ APPROX_SINH

sinh(X)

+ APPROX_COSH

cosh(X)

+ APPROX_TANH

tanh(X)

+ APPROX_EXP

eX

+ APPROX_EXP2

e X

+ APPROX_LN

log(X)

+ APPROX_LOG

log10(X)

+ APPROX_POW

10X

+ APPROX_POW2

10 X

+ APPROX_SQRT

sqrt(X)

+ APPROX_ROOT3

X1/3

Las estructuras de datos permitidas son Valor escalar y Serie de datos. Los tipos de datos permitidos son Entero de 16 bits, Entero de 32 bits y Cadena.

Si el argumento es una lista, se toma su primer elemento. Si se trata de nuevo de una lista, se repite el proceso.

Notas

Como resultado, la función devuelve una serie de datos del tipo de datos En coma flotante de 64 bits.

El número de valores corresponde al número de funciones de elemento de la función del modelo más uno.

El último valor representa la medida de ajuste Χ2 (chi-cuadrado). Es la suma de los cuadrados de todas las desviaciones de la función aproximada del modelo con respecto a los datos. Cuanto menor sea Χ2, mejor se aproxima a los datos la función del modelo encontrada. Los demás valores de la serie de datos proporcionan los coeficientes de las funciones de elemento utilizadas en la función del modelo, cuyo orden corresponde al utilizado en la tabla anterior.

El siguiente gráfico muestra los datos de medición de una curva característica cuadrática y su aproximación:

Disponibilidad

FlexPro Basic, Professional, Developer Suite

Ejemplos

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)
 

Aproxima una señal con una función del modelo cuadrática.

Dim _c = Approximation(Signal, {"1", "sin(2*PI*X)"})
Signal(_c[0] + _c[1] * sin(2 * PI * Signal.X), Signal.X)
 

Aproxima una señal con una función del modelo personalizada Y(X) = A + B * Sin(2*PI*X).

Véase también

Función Approximation2D

Función HarmonicEstimation

Función NonLinCurveFit

Objeto de análisis Aproximación

Objeto de análisis Aproximación 2D

Objeto de análisis Regresión

Bibliografía

[1] "Philip R. Bevington, D. Keith Robinson": "Data Reduction and Error Analysis for the Physical Sciences, 3rd Edition". "McGraw-Hill, New Jork", 2003. ISBN 0-07-247227-8.