Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function y=MSA(fun,p1,p2,numOfLoops)
- x0 = (p1+p2)/2;
- x1 = SA(fun,p1,p2,1);
- syms x xn xnm;
- fun1 = subs(fun,x,xn);
- fun2 = subs(fun,x,xnm);
- i = 0;
- xnm = x0;
- xn = x1;
- while((abs(xn-xnm) > 0.00001 || abs(subs(diff(fun1))) < 1) && i < numOfLoops)
- fxn = subs(fun1);
- fxnm = subs(fun2);
- eta = (fxn-fxnm)/(xn-xnm);
- alpha = 1/(1-eta);
- xnp = xn + (alpha*(fxn -xn));
- tmp = xn;
- xn = xnp;
- xnm = tmp;
- i = i+1;
- end
- y = xn;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement