Bonjour,
Dans le cadre d'une analyse de données expérimentales, je veux fitter une fonction assez simple. Pour l'instant, j'utilise lsqcurvefit et mon code est le suivant:
Si je regarde la doc de nlparci, je lis :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 function y = modele(coef_initiaux,x) y = coef_initiaux(1)+coef_initiaux(2)*cos(x-coef_initiaux(3)); y = y./y_erreur; end [coef,~,residual,~,~,~,J] = lsqcurvefit(@modele,coef_initiaux,x,y./y_erreur, limites_basses, limites_hautes); coef_erreur = nlparci(coef,residual,'jacobian',J,'alpha',0.01);
Bon, je dois avouer que j'ai encore un peu de mal avec les calculs d'erreurs d'un fit. Mais est-ce que j'aurais quelque chose à gagner en utilisant nlinfit et l'option de fit rubuste à la place de lsqcurvefit puis en utilisant :ci = nlparci(beta,resid,'jacobian',J) is an alternative syntax that also computes 95% confidence intervals. J is the Jacobian computed by nlinfit. If the 'robust' option is used with nlinfit, use the 'covar' input rather than the 'jacobian' input so that the required sigma parameter takes the robust fitting into account.
A la place de ma dernière ligne ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part coef_erreur = nlparci(coef,residual,'covar',sigma,'alpha',0.01);
Seconde question, j'ai du mal à saisir les différences entre nlinfit et lsqcurvefit. Quelle sont-elles ?
Partager