[exo] fit d'une courbe avec une gaussienne sous Matlab
Bonsoir à tous,
je suis étudiant en licence de physique-chimie, et dans le cadre d'une introduction à Matlab, je dois faire un programme permettant d'approcher un spectre temps de vol avec une gaussienne.
Un spectre temps de vol représente le temps que met un ion, préalablement accéléré, pour atteindre un détecteur ; chaque type d'ion met un temps différent en fonction de sa masse, ce qui permet donc d'identifier ces ions. Il se présente sous la forme d'une courbe avec plusieurs pics.
Après plusieurs heures d'écorchage de cerveau, et plusieurs entrevues avec mon prof, je n'arrive à "fitter" qu'un seul pic, ce qui m'a quand même permis de connaitre les coefficients de ma gaussienne, qui est de la forme y=A.exp(-Bx²+C)+D.
Mais je n'arrive pas à fitter l'ensemble du spectre !
Comment faire pour que TOUT le spectre soit fitté par la gaussienne ?
N'hésitez SURTOUT pas à me poser des questions, si ce n'est pas très clair !
Re : [exo] fit d'une courbe avec une gaussienne sous Matlab
Pas de réponse ? Zut, ça m'aurait intéressée aussi...
16/06/2009 - 20h59
jusquiame
Date d'inscription
mars 2009
Localisation
St Chély d'Apcher (48)
Âge
69
Messages
104
Re : [exo] fit d'une courbe avec une gaussienne sous Matlab
Bonsoir,
Le spectre à "fitter" est-il (ou non) nul aux deux extrêmités ? Si OUI, il ne faut pas ajouter de constante à la gaussienne.
D'autre part, dans A exp(-B x2 + C), C est inutile (c'est A qui suffit à donner l'ordonnée du sommet). Si on veut un sommet translaté (sommet ailleurs qu'en x=0), prendre plutôt A*exp(-B*(x-C).^2) comme modèle, ou A*exp(-B*(x-C).^2) + D si le spectre n'est pas nul aux deux extrêmités.
A priori, pour traiter l'ensemble du spectre, il devrait suffire d'utiliser TOUTES les mesures disponibles.
L'outil d'optimisation "fminsearch" est intéressant, car il n'utilise pas de dérivations... est-ce lui que vous utilisez ?