Ficheru:Drum vibration mode02.gif

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

Drum_vibration_mode02.gif(252 × 169 píxels, tamañu de ficheru: 200 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
 
Este diagrama fue creado con MATLAB.
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 = 2; % 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;

      H=text(0, -0.3, 1.4, sprintf('(%d, %d) mode', k, p), 'fontsize', 25);

      
      file=sprintf('Frame%d.png', 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% Frame10* Drum_vibration_mode02.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 2023252 × 169 (200 kB)Dndnrmn1Reverted to version as of 06:25, 12 January 2008 (UTC)
04:44 16 xin 2008Miniatura de la versión a fecha de 04:44 16 xin 2008248 × 130 (191 kB)Oleg AlexandrovStrip caption, looks better like this
06:25 12 xin 2008Miniatura de la versión a fecha de 06:25 12 xin 2008252 × 169 (200 kB)Oleg Alexandrov
06:21 12 xin 2008Miniatura de la versión a fecha de 06:21 12 xin 2008253 × 194 (202 kB)Oleg Alexandrov{{Information |Description=Illustration of vibrations of a drum. |Source=self-made with MATLAB |Date=~~~~~ |Author= Oleg Alexandrov |Permission= |other_versions= }} {{PD-self}} ==Source code ([[:

La páxina siguiente usa esti ficheru:

Usu global del ficheru