Definite Integration in Matlab
1 view (last 30 days)
Show older comments
I have been working hard on it, but do not seem to have a clue....
I have a symbolic function f(a very complicated function). I want to integrate the function with limits say:: a(lower) to b(higher)
if true
% code
{
k=int(f,a,b);
k=vpa(k);
}
With the last sentence it should give numerical output, but instead, it simply shows:
numeric::Int(f)
But when I decrease the upper limit(b), it works fine(gives a numeric output). I cannot change the limit.
Hence, it seems that when the upper limit goes above a certain value, it doesn't give a numeric output. I cannot even use trapz and other functions, it drastically increases the time. It's a very lengthy program.
Thanx
0 Comments
Accepted Answer
Walter Roberson
on 4 Jul 2013
I think it likely that with the higher b, the numeric integrator is detecting that you are exceeding the tolerance for integration error.
What happens if you do something like
k = int(f,a,c) + int(f,c,b);
where c is an intermediate point known to be small enough to integrate successfully ?
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!