Code for newton-rapshon ( x, y)
    3 ビュー (過去 30 日間)
  
       古いコメントを表示
    
Hello everyone
I am in a course of numerical methods, where I need to apply the newton raphson method for two variables, I have tried source codes, however I always receive an error. Someone could provide me with the solution and explain what happens?. Thank you.
Other methods ( root in 1)
x(1)^4+x(2)^4+2*x(1)^2*x(2)^2-4*x(1)+3
回答 (1 件)
  Manan Jain
 2021 年 9 月 22 日
        function [root,ea,iter]=newtraph(func,dfunc,xr,es,maxit,varargin) 
% newtraph: Newton−Raphson root location zeroes  
% % [root,ea,iter]=newtraph(func,dfunc,xr,es,maxit,p1,p2,...): 
% % uses Newton−Raphson method to find the root of func 
% % input: 
% % func = name of function  
% % dfunc = name of derivative of function  
% % xr = initial guess 
% % es = desired relative error (default = 0.0001%) 
% % maxit = maximum allowable iterations (default = 50) 
% % p1,p2,... = additional parameters used by function 
% % output: 
% % root = real root 
% % ea = approximate relative error (%) 
% % iter = number of iterations 
if nargin<3,
    error('at least 3 input arguments required'),
end if 
    nargin<4|isempty(es),es=0.0001;
end if 
    nargin<5|isempty(maxit),maxit=50;
end iter = 0; 
while (1) xrold = xr; 
    xr = xr − func(xr)/dfunc(xr); 
    iter = iter + 1; 
    if xr ~= 0, 
        ea = abs((xr − xrold)/xr) * 100; 
    end if 
        ea <= es | iter >= maxit, 
        break, 
    end 
end 
root = xr;
end
0 件のコメント
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!


