Bonjour,
Je souhaite resoudre un systeme lineaire de la forme :
y=a + bx1 + cx2 (1)
ou a,b,c sont les coefficients a determiner. y,x1 et x2 sont des vecteurs de la meme taille et sont connus.
J'ai donc pense a utilise la methode des moindres carres. Je ne me suis pas embetee, j'ai utilise directement la fonction proposee par matlab : X=lscov(A,B) en mettant mon equation (1) sous la forme matricielle : B=AX avec X=(a b c).
Cette fonction me retourne bien les valeurs des coefficients a, b, c. Par contre, j'aimerais egalement connaitre l'incertitude sur mes coefficients. Matlab propose de calculer l'ecart-type avec la commande suivante : [x,stdx]=lscov(...) mais je ne comprends pas comment Matlab calcule cet ecart-type.
Dans la description de la fonction lscov, il est ecrit que stdx est calcule de la maniere suivante :
x = inv(A'*inv(V)*A)*A'*inv(V)*B
mse = B'*(inv(V) - inv(V)*A*inv(A'*inv(V)*A)*A'*inv(V))*B./(m-n)
S = inv(A'*inv(V)*A)*mse
stdx = sqrt(diag(S))
Ce qui me perturbe, c'est que je n'entre a aucun moment la valeur de V. Du coup, je ne comprends pas comment cette fonction peut calculer l'ecart-type.
Est-ce-que quelqu'un aurait une explication ? ou sinon, est-ce-que quelqu'un aurait une autre astuce pour calculer l'incertitude sur mes coefficients ? je n'ai vraiment pas envie d'utiliser les valeurs retournees par matlab sans savoir comment il fait pour les trouver. Et surtout, j'ai peur que les valeurs que matlab me retourne ne correspondent pas a l'incertitude, mais a autre chose que je n'aurais pas saisie.
Merci d'avance pour votre aide !
Partager