Перейти на страницу файла на Викискладе

Файл:Subderivative illustration.png

Материал из Википедии — свободной энциклопедии
Перейти к навигации Перейти к поиску

Subderivative_illustration.png(540 × 463 пкс, размер файла: 21 КБ, MIME-тип: image/png)

Краткое описание

Перенесено с en.wikipedia на Викисклад участником Maksim.

Первоначальная страница описания находилась здесь. Все нижеперечисленные имена участников относятся к en.wikipedia.

Лицензирование

Public domain Я, владелец авторских прав на это произведение, передаю его в общественное достояние. Это разрешение действует по всему миру.
В некоторых странах это не может быть возможно юридически, в таком случае:
Я даю право кому угодно использовать данное произведение в любых целях без каких-либо условий, за исключением таких условий, которые требуются по закону.

Source code (Matlab)

function main() % Subderivative illustration

%  set up the plotting window, and some graphing paramenters
   figure(1); clf; hold on; axis equal; axis off;
   thick_line=2.5; thin_line=2; arrow_size=0.3; arrow_type=1; arrow_angle=20; %(angle in degrees)
   font_size=30; ball_rad=0.04;
   black=[0, 0, 0]; red=[1, 0, 0];

%  define the function; plot the x and y axes and the function
   a=-1.5; b=3; h=0.02; 
   X=[a  0 1 2 3]; Y=[0.3  0.2 0.5 1.5 3];
   arrow([a 0],       [b, 0],      thin_line, arrow_size, arrow_angle, arrow_type, black)  
   arrow([0, min(Y)-1], [0, max(Y)], thin_line, arrow_size, arrow_angle, arrow_type, black); 
   plot(X, Y, 'linewidth', thick_line); 

   % the "tangent" lines
   x0=X(3); y0=Y(3);
   s=0.8; plot(X, s*(X-x0)+y0, 'linewidth', thick_line, 'color', [1, 0, 0])
   s=0.5; plot(X, s*(X-x0)+y0, 'linewidth', thick_line, 'color', [1, 0, 0])

   % auxiliary line
   plot([x0 x0], [0, y0], 'linewidth', thin_line, 'color', [0, 0, 0], 'linestyle', '--')
   
%  graph some suggestive balls
   ball_full (x0, 0, ball_rad, [0 0 0 ]); 
   ball_full (x0, y0, ball_rad, [1 0 0 ]); 

%   text, sir
   H=text(x0, -0.006*font_size,  'x_0');
   set(H, 'fontsize', font_size, 'HorizontalAlignment', 'c', 'VerticalAlignment', 'c')

   axis(1.1*[a b min(Y)-1 max(Y)])
%  save to postscript
   saveas(gcf, 'Subderivative_illustration.eps', 'psc2')
   
function ball_full(x, y, r, color)
   Theta=0:0.1:2*pi;
   X=r*cos(Theta)+x;
   Y=r*sin(Theta)+y;
   H=fill(X, Y, color);
   set(H, 'EdgeColor', 'none');


  function arrow(start, stop, thickness, arrow_size, sharpness, arrow_type, color)

% Function arguments:
% start, stop:  start and end coordinates of arrow, vectors of size 2
% thickness:    thickness of arrow stick
% arrow_size:   the size of the two sides of the angle in this picture ->
% sharpness:    angle between the arrow stick and arrow side, in degrees
% arrow_type:   1 for filled arrow, otherwise the arrow will be just two segments
% color:        arrow color, a vector of length three with values in [0, 1]
   
% convert to complex numbers
   i=sqrt(-1);
   start=start(1)+i*start(2); stop=stop(1)+i*stop(2);
   rotate_angle=exp(i*pi*sharpness/180);

% points making up the arrow tip (besides the "stop" point)
   point1 = stop - (arrow_size*rotate_angle)*(stop-start)/abs(stop-start);
   point2 = stop - (arrow_size/rotate_angle)*(stop-start)/abs(stop-start);

   if arrow_type==1 % filled arrow

      % plot the stick, but not till the end, looks bad
      t=0.5*arrow_size*cos(pi*sharpness/180)/abs(stop-start); stop1=t*start+(1-t)*stop;
      plot(real([start, stop1]), imag([start, stop1]), 'LineWidth', thickness, 'Color', color);

      % fill the arrow
      H=fill(real([stop, point1, point2]), imag([stop, point1, point2]), color);
      set(H, 'EdgeColor', 'none')
      
   else % two-segment arrow
      plot(real([start, stop]), imag([start, stop]),   'LineWidth', thickness, 'Color', color); 
      plot(real([stop, point1]), imag([stop, point1]), 'LineWidth', thickness, 'Color', color);
      plot(real([stop, point2]), imag([stop, point2]), 'LineWidth', thickness, 'Color', color);
   end
date/time username edit summary
20:06, 18 December 2005 en:User:Oleg Alexandrov (source code)
20:04, 18 December 2005 en:User:Oleg Alexandrov

Исходный журнал загрузок

Legend: (cur) = this is the current file, (del) = delete this old version, (rev) = revert to this old version.

Click on date to download the file or see the image uploaded on that date.

Эту математическую иллюстрацию желательно воссоздать или аккуратно преобразовать в векторный формат SVG. Это даёт несколько преимуществ, прочитать о которых подробнее вы можете на странице Commons:Media for cleanup. Если вам уже сейчас доступна векторная версия данного изображения, загрузите её, пожалуйста, а затем замените этот шаблон на следующий: {{Vector version available|Имя загруженного файла.svg}}.

Краткие подписи

Добавьте однострочное описание того, что собой представляет этот файл

Элементы, изображённые на этом файле

изображённый объект

История файла

Нажмите на дату/время, чтобы посмотреть файл, который был загружен в тот момент.

Дата/времяМиниатюраРазмерыУчастникПримечание
текущий18:34, 20 марта 2006Миниатюра для версии от 18:34, 20 марта 2006540 × 463 (21 КБ)MaksimLa bildo estas kopiita de wikipedia:en. La originala priskribo estas: == Licensing == {{PD-self}} ==Source code (Matlab)== <pre><nowiki> function main() % Subderivative illustration % set up the plotting window, and some graphing paramenters f

Следующая страница использует этот файл:

Глобальное использование файла

Данный файл используется в следующих вики: