Повна роздільність(SVG-файл, номінально 512 × 512 пікселів, розмір файлу: 249 КБ)

Wikimedia Commons logo Відомості про цей файл містяться на Вікісховищі — централізованому сховищі вільних файлів мультимедіа для використання у проектах Фонду Вікімедіа.

Опис файлу

Опис
English: Consider a function f whose graph looks like a hill. The blue curves are the level sets; the red curves follow the direction of the gradient. The cautious hiker follows the blue paths; the bold hiker follows the red paths. Note that blue and red paths always cross at right angles.

Source code:

 Lx1=-1.7; Lx2=2.3; Ly1=-2; Ly2=2;  % box dimensions
 N=60; % split the box into N x N grid
 [X, Y]=meshgrid(Lx1:1/N:Lx2, Ly1:1/N:Ly2); % the grid
 
 f=inline('-((y+1).^4/25+(x-1).^4/10+x.^2+y.^2-1)');   % draw the level sets of f
 fx=inline('-2/5*(x-1).^3-2*x'); fy=inline('-4/25*(y+1).^3-2*y'); % partial deriv  
 Z=f(X, Y); % the function value
 
 figure(1); clf; hold on; axis equal; axis off; % pop up a figure
 h=0.5; % spacing between heights
 v=[-20:h:0.8 0.85]; % the heights
 [c,h] = contour(X, Y, Z, v, 'b'); % the level sets at those heights
 
 x0=0.1333; y0=-0.0666; % coordinates of the top of the hill
 delta=0.01; % descend from the top of the hill with this step size
 Angles=linspace(0, 2*pi, 20); % will draw 19 descent curves with Angles(i)
 
 for i=1:length(Angles)
   x=x0+0.1*cos(Angles(i)); y=y0+0.1*sin(Angles(i)); % starting point
   Curve_x=[x]; Curve_y=[y]; % will hold a descent curve following the gradient
   
   % descend from the hill 
   for j=1:500
     x=x-delta*fx(x);
     y=y-delta*fy(y);
     Curve_x=[Curve_x x]; Curve_y=[Curve_y y]; % append the updated values
     
     if max(abs(x), abs(y)) > 5 % stop when going beyond the picture frame
       break;
     end
   end
   plot(Curve_x, Curve_y, 'r') % plot the curve of steepest descent
 end
 
 axis([Lx1 Lx2 Ly1 Ly2]); % the picture frame  
 plot2svg('level_grad.svg',gcf); % Download plot2svg from Matlab central
%
Час створення
Джерело File:Level_grad.png
Автор Oleg Alexandrov
Інші версії File:Level_grad.png

Source code modified by me to output SVG directly from Matlab

Ліцензування

Public domain Я, власник авторських прав на цю роботу, передаю роботу в суспільне надбання. Застосовується по всьому світу.
У деяких країнах це не може бути юридично можливо, в такому випадку:
Я даю кожному право на використання цієї роботи для будь-яких цілей, без будь-яких умов, якщо такі умови не вимагаються за законом.

Підписи

Додайте однорядкове пояснення, що саме репрезентує цей файл

Об'єкти, показані на цьому файлі

зображує

Історія файлу

Клацніть на дату/час, щоб переглянути, як тоді виглядав файл.

Дата/часМініатюраРозмір об'єктаКористувачКоментар
поточний08:49, 25 серпня 2010Мініатюра для версії від 08:49, 25 серпня 2010512 × 512 (249 КБ)GyroMagicianFixed page size to image size (using Inkscape)
08:48, 25 серпня 2010Мініатюра для версії від 08:48, 25 серпня 2010512 × 384 (249 КБ)GyroMagician{{Information |Description={{en|1=Source code: Lx1=-1.7; Lx2=2.3; Ly1=-2; Ly2=2; % box dimensions N=60; % split the box into N x N grid [X, Y]=meshgrid(Lx1:1/N:Lx2, Ly1:1/N:Ly2); % the grid f=inline('-((y+1).^4/25+(x-1).^4/10+x.^2+y.^2-1)');

Така сторінка використовує цей файл:

Глобальне використання файлу

Цей файл використовують такі інші вікі: