Help with Matlab function

2 visualizzazioni (ultimi 30 giorni)
Lavorizia Vaughn
Lavorizia Vaughn il 29 Set 2021
Commentato: Lavorizia Vaughn il 30 Set 2021
hello,
i have to implement a MATLAB function findmanyzeros of the form function p = findmanyzeros(f, a, b, n, 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(xk1) have different signs, compute a zero using findzero
3. The output vector p should contain all the computed zeros
my code is as follows:
function p = findmanyzeros(f, a, b, n, tol)
n=n+1;
for k = 1:n
if f(xk)*f(xk-1)<0
findzero(f);
end
end
p
my code is wrong and i could really appriciate some help, thanks.

Risposta accettata

Jan
Jan il 29 Set 2021
Modificato: Jan il 30 Set 2021
This homework question contains useful instructions already:
"Compute n+1 equidistant points xk , k=0,...,n, between a and b"
You've omitted this step. Use the command linspace() to solve it and assign the output to the variable x.
Then you can use f(x(k)) and f(x(k+1)).
I guess, that calling findzero needs the variable tol. Assign the output of this function to p(k).
  4 Commenti
Stephen23
Stephen23 il 30 Set 2021
"Unrecognized function or variable 'findzero'."
FINDZERO is not a MATLAB function. Did you mean FZERO?:
Lavorizia Vaughn
Lavorizia Vaughn il 30 Set 2021
Yes I had the file findzero named wrong. Thanks for the help.

Accedi per commentare.

Più risposte (0)

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by