Ficheru:Drum vibration mode03.gif

Contenido de la página no disponible en otros idiomas.
De Wikipedia

Drum_vibration_mode03.gif(250 × 130 píxels, tamañu de ficheru: 116 kB, triba MIME: image/gif, animáu, 19 cuadros, 1,9s)

Esti ficheru ye de Wikimedia Commons y puen usalu otros proyeutos. La descripción de la páxina de descripción del ficheru s'amuesa darréu.

Descripción Illustration of vibrations of a drum.
Data (UTC)
Fonte self-made with MATLAB
Autor Oleg Alexandrov
Otres versiones Derivative works of this file:  Membrane-normal-modes.gif
Public domain Yo, el titular de los drechos d'autor d'esta obra, la llibero como dominiu públicu. Esto s'aplica nel mundu ensembre.
En dellos países seique esto nun seya posible llegalmente; nesti casu:
Doi a cualesquier persona permisu pa usar esta obra pa cualesquier propósitu, ensin denguna condición, menos si eses condiciones requierense pola llei.

Source code (MATLAB)

function main()

   k = 0; % k-th asimuthal number and bessel function
   p = 3; % p-th bessel root

   q=find_pth_bessel_root(k, p); 

   N=20; % used for plotting

   % Get a grid
   R1=linspace(0.0, 1.0, N); 
   Theta1=linspace(0.0, 2*pi, N);
   [R, Theta]=meshgrid(R1, Theta1);
   X=R.*cos(Theta);
   Y=R.*sin(Theta);

   T=linspace(0.0, 2*pi/q, N); T=T(1:(N-1));

   for iter=1:length(T);
      
      t = T(iter);
      Z=sin(q*t)*besselj(k, q*R).*cos(k*Theta);

      figure(1); clf; 
      surf(X, Y, Z);
      caxis([-1, 1]);
      shading faceted;
      colormap autumn;

      % viewing angle
      view(108, 42);
      
      axis([-1, 1, -1, 1, -1, 1]);
      axis off;

      file=sprintf('Frame_mode%d%d_%d.png', k, p, 1000+iter);
      disp(sprintf('Saving to %s', file));
      print('-dpng',  '-zbuffer',  '-r100', file);

      pause(0.1);
   end

% converted to gif with the command 
% convert -antialias -loop 10000 -delay 10  -scale 50% Frame_mode03* Drum_vibration_mode03.gif
 
   

function r = find_pth_bessel_root(k, p)

   % a dummy way of finding the root, just get a small interval where the root is
   
   X=0.5:0.5:(10*p+1); Y = besselj(k, X);
   [a, b] = find_nthroot(X, Y, p);

   X=a:0.01:b; Y = besselj(k, X);
   [a, b] = find_nthroot(X, Y, 1);

   X=a:0.0001:b; Y = besselj(k, X);
   [a, b] = find_nthroot(X, Y, 1);

   r=(a+b)/2;
   
function [a, b] = find_nthroot(X, Y, n)

   l=0;

   m=length(X);
   for i=1:(m-1)
      if ( Y(i) >= 0  & Y(i+1) <= 0 ) | ( Y(i) <= 0  & Y(i+1) >= 0 )
	 l=l+1;
      end

      if l==n
	 a=X(i); b=X(i+1);

	 %disp(sprintf('Error in finding the root %0.9g', b-a));
	 return;
      end
   end

   disp('Root not found!');

Pies

Añade una explicación corta acerca de lo que representa este archivo

Elementos representados en este archivo

representa a

tipo de archivo español

image/gif

Historial del ficheru

Calca nuna fecha/hora pa ver el ficheru como taba daquella.

Data/HoraMiniaturaDimensionesUsuariuComentariu
actual11:12 18 mar 2023Miniatura de la versión a fecha de 11:12 18 mar 2023250 × 130 (116 kB)Dndnrmn1Reverted to version as of 20:55, 8 June 2008 (UTC)
00:18 9 ago 2017Miniatura de la versión a fecha de 00:18 9 ago 2017250 × 130 (116 kB)Dogbert66Changed the frame period from 100 ms per frame to 64 ms per frame. Otherwise the relative frequencies of Drum_vibration_mode01.gif, Drum_vibration_mode02.gif, and Drum_vibration_mode03.gif are wrong.
20:55 8 xun 2008Miniatura de la versión a fecha de 20:55 8 xun 2008250 × 130 (116 kB)Oleg Alexandrov{{Information |Description={{en|1=On Illustration of en:vibrations of a circular drum}} |Source=Own work by uploader |Author=Oleg Alexandrov |Date=~~~~ |Permission={{PD-self}} |other_versions= }} {{ImageUpload|full}}

La páxina siguiente usa esti ficheru:

Usu global del ficheru