Psychometric curve fitting using Levenberg–Marquardt algorithm
Mostrar comentarios más antiguos
i'm trying to make (and understand) a psychometric curve fitting (that is used in a scientific paper) using a cumulative gaussian function between two vectors R_objective_distances and X_reel_distances :
$g(m,n,RObjectiveDistances)=\frac{1}{\sqrt{2*\pi}}\int_{m+nR}^{+\propto
}e^{-t^2/2} dt$
to do this, i used the toolbox Curve Fit of Matalab, and specified the library model 'Gaussians'. However, this Gaussian model is not as the one i want to perform. How can i use the model i want in Matlab? (i'm not familiarized with the Curve Fitting)
9 comentarios
Walter Roberson
el 21 de Dic. de 2015
The equation is missing a } in the frac definition.
Anass
el 21 de Dic. de 2015
Walter Roberson
el 21 de Dic. de 2015

Walter Roberson
el 21 de Dic. de 2015
Could you check whether that should be an infinity instead of a propto ?
RObjectiveDistances appears on the left, but the right instead has R; does that R on the right have anything to do with RObjectiveDistances ?
Walter Roberson
el 21 de Dic. de 2015
If the propto is in fact infinity then the right hand side works out as
1/(Pi*(1 - erf(sqrt(1/2)*(m+n*R))))
Anass
el 21 de Dic. de 2015
Walter Roberson
el 21 de Dic. de 2015
It looks to me that that is an infinity that is partly cut off.
What is the original paper being used?
Anass
el 21 de Dic. de 2015
Editada: Walter Roberson
el 21 de Dic. de 2015
Respuestas (1)
Walter Roberson
el 21 de Dic. de 2015
If you zoom in to the equation the propto is an infinity.

The right hand side resolves to
1/2 * erfc(sqrt(1/2)*(m+n*R))
I think it unlikely that the Gaussian model happens to match exactly that, but you could try creating a custom model.
But you are looking for a curve fitting, presumably with parameters m, n, and R, and you have the difficulty that any combination of m+n*R that come out the same would match. But if you let R be a known parameter then you can solve for n in terms of m. If you let E0 be such that erfc(E0) = 0, then E0 = 9.150795341104318, and then
n = (sqrt(2)*E0-m)/R
Possibly you have a number of values to fit.
1 comentario
Categorías
Más información sobre Curve Fitting Toolbox en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
