Fil:Subderivative illustration.png

Från testwiki
Hoppa till navigering Hoppa till sök
Subderivative_illustration.png (540 × 463 pixlar, filstorlek: 21 kbyte, MIME-typ: image/png)

Den här filen är från Wikimedia Commons och kan användas av andra projekt. Beskrivningen på dess filbeskrivningssida där visas nedan.

Sammanfattning

Överförd från en.wikipedia till Commons av Maksim.

Den ursprungliga beskrivningssidan fanns här. Alla följande användarnamn finns på en.wikipedia.

Licensiering

Public domain Jag, upphovsrättsinnehavaren till detta verk, släpper detta verk i public domain. Detta gäller globalt.
I vissa länder kan detta inte vara juridiskt möjligt; i så fall:
Jag ger härmed envar rätten att använda detta verk för alla ändamål, utan några villkor, förutom villkor som lagen ställer.

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

Ursprunglig uppladdningslogg

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.

Denna bild (eller alla bilder i denna artikel eller kategori) bör återskapas med hjälp av vektorgrafik som en SVG-fil. Detta har flera fördelar; se Commons:Media for cleanup för mer information. Om det redan existerar en SVG-version av denna bild, var vänlig och lägg upp den. Efter att en SVG-version lagts upp, ersätt denna mall med {{vector version available|nytt bildnamn.svg}} på denna sida.

Bildtexter

Ingen bildtext har definierats

Objekt som porträtteras i den här filen

motiv

Filhistorik

Klicka på ett datum/klockslag för att se filen som den såg ut då.

Datum/TidMiniatyrbildDimensionerAnvändareKommentar
nuvarande20 mars 2006 kl. 19.34Miniatyrbild för versionen från den 20 mars 2006 kl. 19.34540 × 463 (21 kbyte)wikimediacommons>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

Följande sida använder den här filen: