Sunteți pe pagina 1din 1

0.1.

Ajustes no lineales
Utilizaremos la notación vectorial para usar todos los elementos del conjunto de datos ó parámetros, p.ej.
c ≡ {ck }, y la notación de ı́ndices (sin llaves) para denotar nun solo elemento de datos (xi ó yi ) o parametros (ck ).
Los ı́ndices corren i ∈ {1, 2, ..., N } para datos y k ∈ {1, 2, ..., K} para parámetros.
Para efectuar el ajuste de los datos {xi , yi }, usando el modelo f (xi , c), se utilizara la función ”fsolve” en Octave.
[c0 , dy, I1, I2] = fsolve(@(c)(f (x, c) − y), cin ) (1)
dónde, cin son los valores iniciales de c. Por ejemplo, para la primer función tenemos

f (xi , c) = c1 ∗ erf( 2 ∗ (xi − c2 )/c3 ) + c4 (2)
usamos los siguientes valores iniciales de acuerdo a la figura 1:

25

20
máx(y)

15
xa xb
yi

10

0 mín(y)

-5
-10 -8 -6 -4 -2 0 2 4 6 8 10

xi
Figura 1: Esquema de la grafica con elementos para valores iniciales de cin .

cin (1) = (máx(y) − mı́n(y))/2 (3)


cin (2) = xa (4)
cin (3) = xb − xa (5)
cin (4) = mı́n(y) (6)
Para los errores armamos las siguientes matrices
 ∂f (x1 ,c0 ) ∂f (x1 ,c0 ) ∂f (x1 ,c0 ) ∂f (x1 ,c0 )

∂c1 ∂c2 ∂c3 ... ∂cK
∂f (x2 ,c0 ) ∂f (x2 ,c0 ) ∂f (x2 ,c0 ) ∂f (x2 ,c0 )
...
 
 ∂c1 ∂c2 ∂c3 ∂cK 
Xij =  .. .. .. .. ..  (7)
.

. . . .

 
∂f (xN ,c0 ) ∂f (xN ,c0 ) ∂f (xN ,c0 ) ∂f (xN ,c0 )
∂c1 ∂c2 ∂c3 ... ∂cK

Encontramos la matriz de resolución


M = (X T ∗ X)−1 (8)
Los errores en el ajuste tenemos v
uN
uX
σy = t dyi2 /(N − K) (9)
i=1

Los errores en los parámetros los encontramos


p
δcj = Mjj σy (10)

S-ar putea să vă placă și