Help with a vector
Show older comments
Hello. I have come up with the following code:
function p = findmanyzeros(f, a, b, n, tol)
x = a + (b-a)*(0:n)/n;
fx = f(x);
p = [];
for i = 1:n
if sign(fx(i)) ~= sign(fx(i+1))
p(end+1) = findzero(f, x(i), x(i+1), tol);
end
end
My instructions were to Implement a MATLAB function findmanyzeros of the form function p=findmanyzeros(f, a, b, n, tol)
which finds zeros in the interval [a, b] using the following strategy:
1. Compute n+1 equidistant points xk, k=0,...,n, between a and b
2. For k = 1,...,n, if f(xk) and f(xk−1) have different signs, compute a zero using findzero
3. The output vector p should contain all the computed zeros
5 Comments
Cris LaPierre
on 30 Sep 2021
Sorry if I missed it, but what is your question?
Lavorizia Vaughn
on 30 Sep 2021
Jan
on 30 Sep 2021
Whenever you mention an error in the forum, post a copy of the complete error message. It is much easier to solve an error that to guess, what the error is.
Lavorizia Vaughn
on 30 Sep 2021
Lavorizia Vaughn
on 30 Sep 2021
Edited: Cris LaPierre
on 30 Sep 2021
Accepted Answer
More Answers (0)
Categories
Find more on Mathematics and Optimization in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!