Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- syms x1 y1
- % hold off
- step = 0.1;
- [x,y] = meshgrid(-5:step:5, -5:step:5);
- % func = sym('A^2 + B^2')
- func = sym('(1-x1)^2 + 100*(y1-x1^2)^2');
- % func = sym('2*x1^2 + y1^2 + x1*y1')
- % func = sym('-2*x1^2 - y1^2 + x1*y1')
- func_hl = matlabFunction(func);
- z = func_hl(x,y);
- stX = -3;
- stY = -3.5;
- H = 0.00005;
- hold on;
- contour(x,y,z, 128);
- % clabel(C, h); % Отображение меток на линиях уровня
- % quiver(x,y,gx,gy);
- X = stX, Y=stY
- plot(X,Y,'+');
- % break
- for i=1:200
- derivateX = diff(func, x1);
- derivateX = matlabFunction(derivateX);
- derX = derivateX(X, Y);
- derivateY = diff(func, y1);
- derivateY = matlabFunction(derivateY);
- derY = derivateY(X, Y)
- derX = derX * H;
- derY = derY * H;
- X = X - derX
- Y = Y - derY
- plot(X,Y,'x');
- end
- % hold on
- hold off;
Advertisement
Add Comment
Please, Sign In to add comment