Variable precision arithmetic in ode45 and others?
    2 views (last 30 days)
  
       Show older comments
    
    Michael Croucher
      
 on 29 Oct 2020
  
    
    
    
    
    Commented: Walter Roberson
      
      
 on 23 Jun 2022
            Is it possible to use vpa in ordinary differential equation solvers like ode45?
0 Comments
Accepted Answer
  Walter Roberson
      
      
 on 29 Oct 2020
        
      Edited: Walter Roberson
      
      
 on 30 Oct 2020
  
      Sort of. The internal symbolic engine has two numeric ode routines. At the moment I do not know if there is a matlab level interface to those routines.
You might need to use feval(symengine) to access the routines.
9 Comments
More Answers (2)
  John D'Errico
      
      
 on 29 Oct 2020
        Short answer - no.
Long answer - nnnnoooooo.
ODE45 uses only singles or doubles. Nothing symbolic. vpa is a symbolic tool.
2 Comments
  John D'Errico
      
      
 on 29 Oct 2020
				I suppose it may happen one day. For example, vpaintegral appeared a few years ago. They could provide a tool to do the same for an ODE. But I don't see it happening soon. 
  Steven Lord
    
      
 on 30 Oct 2020
        What types of differential equations are you trying to solve that you need to use arbitrary precision arithmetic?
If you're trying to solve the ODE symbolically rather than numerically, take a look at the dsolve function in Symbolic Math Toolbox.
If you have computed a symbolic equation for the right-hand side of your system of ODEs, you can convert that into a form that the numeric ODE solvers in MATLAB (like ode45) can accept that operates on double arrays using odeFunction also in Symbolic Math Toolbox.
This documentation page may be of interest.
0 Comments
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



