Speed differences in sym and vpa
49 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Pat
el 10 de Oct. de 2013
Respondida: Alan Weiss
el 11 de Oct. de 2013
I am working on an optimization problem that involves calling the Symbolic Math toolbox. The sym function makes optimization very slow, so I tried vpa and it made it a lot faster. I am wondering where the speed difference comes from? Is it the fact that sym converts everything to rational form while vpa doesn't? If so, should sym(x,'d') do the same thing as vpa(x) because now they're in the same form?
Thanks!
0 comentarios
Respuesta aceptada
Walter Roberson
el 11 de Oct. de 2013
vpa() switches to arithmetic calculations with the default number of digits (unless you asked for different). That can be a lot faster than trying to find symbolic equivalences and symbolic special cases -- and is likely to require far fewer terms.
1 comentario
Más respuestas (1)
Alan Weiss
el 11 de Oct. de 2013
I recommend using matlabFunction for optimizing symbolic variables and functions. There is an extensive example here, and another example here.
Alan Weiss
MATLAB mathematical toolbox documentation
0 comentarios
Ver también
Categorías
Más información sobre Conversion Between Symbolic and Numeric en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!