Simple fixed-point iteration method
50 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
John Smith
le 22 Sep 2019
Réponse apportée : Tsega'ab
le 13 Déc 2023
My task is to implement (simple) fixed-point interation.
So far, I've got the following and I keep receiving error Undefined function 'fixedpoint' for input arguments of type 'function_handle'.
(I'm new in Matlab, so there may be both syntactical or semantical errors...)
function [ x ] = fixedpoint(g,I,y,tol,m)
% input: g, I, y, tol, max
% g - function
% I - interval
% y - starting point
% tol - tolerance (error)
% m - maximal number of iterations
% x - approximate solution
a=I(1);b=I(2);
if(y<a | y>b)
error('The starting iteration does not lie in I.')
end
x=y;
gx=g(y);
while(abs(x-gx)>tol & m>0)
if(gx<a | gx>b)
error('The point g(x) does not lie in I.')
end
y=x;
x=g(y);
m=m-1;
end
0 commentaires
Réponse acceptée
Dimitris Kalogiros
le 22 Sep 2019
Dear John
Put your function into the same folder with the program (m-file) that calls it.
4 commentaires
Dimitris Kalogiros
le 24 Sep 2019
Hm hm, I don't know if it is necessary , but I always follow this rule.
Plus de réponses (4)
emmanuel john Lavarias
le 27 Sep 2021
- Solve one real root of ex−2x−5=0ex−2x−5=0 with x0=−2x0=−2 using the Fixed-Point Iteration Method accurate to four decimal places.
0 commentaires
Ahteshamul Hoque Tareq
le 8 Jan 2022
a=I(1);b=I(2); if(y<a | y>b) error('The starting iteration does not lie in I.') end x=y; gx=g(y); while(abs(x-gx)>tol & m>0) if(gx<a | gx>b) error('The point g(x) does not lie in I.') end y=x; x=g(y); m=m-1; end
0 commentaires
Tsega'ab
le 13 Déc 2023
function [ x ] = fixedpoint(g,I,y,tol,m)
% input: g, I, y, tol, max
% g - function
% I - interval
% y - starting point
% tol - tolerance (error)
% m - maximal number of iterations
% x - approximate solution
a=I(1);b=I(2);
if(y<a | y>b)
error('The starting iteration does not lie in I.')
end
x=y;
gx=g(y);
while(abs(x-gx)>tol & m>0)
if(gx<a | gx>b)
error('The point g(x) does not lie in I.')
end
y=x;
x=g(y);
m=m-1;
end
0 commentaires
Voir également
Catégories
En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!