hypergeom (kummer function) mupadmex error

2 visualizaciones (últimos 30 días)
Daniel
Daniel el 7 de Jul. de 2013
Hi guys,
I calibrate a model and use kummer hypergeometric function to calculate the option price. The problem is that when I use hypergeom function of Matlab, it returns error for some values:
Error using mupadmex
Internal error with symbolic engine. Please quit and restart MATLAB.
Error in sym/hypergeom (line 1084)
hSym = mupadmex('symobj::map', args{1}.s, 'symobj::hypergeom',...
Error in hypergeom (line 35)
h = double(hypergeom(n,d,sym(z)));
Error in momentum (line 3)
x=hypergeom(p+nu+1,nu+1,alpha/2);
Error in Putprice (line 47)
Def=1-exp(-integral(bfunc,0,T))*(x^2/tau)^(1/(2*abs(beta)))*momentum(-1/(2*abs(beta)),delta,x^2/tau);
Error in LSQDiff (line 12)
Diff(:,i)= mktprice(:,i)-Putprice(S,K,T(i),x(1),x(2));
When I use kummer function, that was written by other authors and uploaded to the mathworks, the function is working. But for some other values it hangs.
I cannot combine these two functions and donot know the source of the error. Can anybody help with this mupadmex error?
Thanks.
  2 comentarios
Walter Roberson
Walter Roberson el 7 de Jul. de 2013
Do you have an estimate for the order of magnitude the hypergeom would reach? I have seen signs that mupad might exit like that if it tried to calculate a number much larger than it's limits (something like 10^10000)
Daniel
Daniel el 7 de Jul. de 2013
Editada: Daniel el 7 de Jul. de 2013
It starts from 8.5340e+132 and converges to 597.9375 Now I'm using genHyper function written by Ben Barrowes
It returns the following mistake:
error in ipremax--did not find maximum exponent
Error using genHyper>ipremax (line 1721)
stop encountered in original fortran code

Iniciar sesión para comentar.

Respuestas (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by