salut tous,
comme j'ai des galères avec la fonction "lsqnonlin" alors j'ai décider de me rabattre sur "lsqcurvefit", par contre je n'arrive pas à comprendre la syntaxe qu'il faut utiliser. Dans mon cas j'ai quelque chose dans ce genre:
parametresInitiaux=[1 2 3];
xdata=[1 2 3 4 5];
ydata=[1 2 3 4 5];
et la fonction calcul qui me donne en sortie un vecteur du type [0.1 0.2 0.3 0.4 0.5];
j'ai regardé la doc et j'ai testé ceci:
[x,resnorm] = lsqcurvefit(calculs,parametresInitiaux,xdata,ydata)
la reponse de matlab est:
??? Input argument "parametresInitiaux" is undefined.
ceci est dû à ce qu'il y a dans ma fonction "calculs":
1 2
| function RESIDU=calculs(parametresInitiaux)
WriteCalculTreatment(parametresInitiaux(1),parametresInitiaux(2),parametresInitiaux(3)); |
mais je ne vois pas le probleme... 
ensuite j'ai regardé des messages sur le forum et j'ai testé ceci:
[x,resnorm] = lsqcurvefit(@(parametresInitiaux,xdata),@calculs,parametresInitiaux,xdata,ydata)
et ceci:
[x,resnorm] = lsqcurvefit(@calculs,parametresInitiaux,xdata,ydata)
et j'ai comme "reponse":
1 2
| ??? Error using ==> calculs
Too many input arguments. |
pourtant le nombre d'arguments me parait correct 
pouvez vous me dire quelle est la syntaxe que je dois respecter dans mon cas car je ne comprends plus rien
Partager