How to use "deval" or any other function non ode solver output

Suppose I have a solution to an ode that I obtained numerically using an accurate method that is close to the exact solution. Call it Y_exact which may be of size 2 x 1000, where 2 is for the two solution components, and 1000 is the number of time points. Suppose I have another solution by a differnt method Y of size 2 x n where n <= 1000. Let tout = 1:dt:n
Now if Y_exact obtained with ode45 or any other solver, I could obtain exact solution at the same time points by doing deval(sol,tout) where sol is the solution structure obtained from ode45.
Now since Y_exact in my case is not obtained with a matlab solver, and is just a vector, is there any way to use deval() or any other way to match Y and Y_exact at the same time points? So that I can compute the error norm(Y - Ytrue,'inf').

 Accepted Answer

Y_exact_to_Y = interp1(T_exact,Y_exact,tout)
where T_exact is the vector of time points corresponding to Y_exact.
Further, you can choose the method of interpolation. Read

More Answers (0)

Products

Release

R2022b

Tags

Asked:

on 3 Aug 2023

Edited:

on 3 Aug 2023

Community Treasure Hunt

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

Start Hunting!