How i can construct Algorithm for successive values of a function

1 visualizzazione (ultimi 30 giorni)
Dear All,
  • Please help me to construct following algorithm
  • X0(initializing vector)
  • while (tol>e-4,iter<100)
  • k=0,1 2...until convergent;
  • compute f(Xk);% a nonlinear function
  • compute Sk=f(Xk+Sk)-f(Xk);
  • Xk=Xk+Sk;
  • tol=gradient (f(Xk));end
Here i am facing the problem that when suppose k=0 (iteration 1),how i can get f(X0+S0)in same iteration because this is the output of second iteration.My Problem is how i can calculate the difference f(Xk+Sk)-f(Xk).In general at kth iteration i need to find
  • f(Xk+Sk)-f(Sk)
  • where
  • f(Xk+Sk) is output that will be calcuated at (k+1)th iter
  • f(Xk) is output that will be calculated at kth iter.

Risposte (1)

Walter Roberson
Walter Roberson il 11 Feb 2016
No, f(Xk+Sk) is not the output that will be calculated at the k+1'th iteration. It is the output of f when called upon the sum of Xk and Sk
You have the difficulty that you have not defined an initial value for Sk.
  1 Commento
zahid
zahid il 11 Feb 2016
Sorry i did a mistake in writing this code please see now
  • X0(initializing vector)
  • while (tol>e-4,iter<100)
  • k=0,1 2...until convergent;
  • compute f(Xk);% a nonlinear function
  • Compute Sk % Newton step
  • compute R=f(Xk+Sk)-f(Xk);
  • Sk=RSk
  • Xk=Xk+Sk;
  • tol=gradient (f(Xk)); end

Accedi per commentare.

Categorie

Scopri di più su Mathematics and Optimization in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by