0

私のコードは機能しますが、さらに 2 つのことを追加する必要があります。

  • output- 初期推定値 x0 を含む一連の推定値を含むベクトル、
  • 入力最大反復回数

    function [ R, E ] = myNewton( f,df,x0,tol )
        i = 1;
    
        while abs(f(x0)) >= tol
            R(i) = x0;
            E(i) = abs(f(x0));
            i = i+1;
            x0 = x0 - f(x0)/df(x0);
        end
    
        if abs(f(x0)) < tol
            R(i) = x0;
            E(i) = abs(f(x0));
        end
    
    end 
    
4

1 に答える 1

1

まあ、あなたが必要とすることはすべてすでにほとんど行われており、あなたはそれに対処できるはずです..

  1. max iteration は variableiに含まれているため、それを返す必要があります。これを追加

     function [ R, E , i] = myNewton( f,df,x0,tol )
    
  2. 一連の推定値をプロットする:

    plot(R); %after you call myNewton
    
  3. 最大反復回数を表示

    disp(i); %after you call myNewton
    
于 2012-11-19T19:25:04.560 に答える