File proveniente da Wikimedia Commons. Clicca per visitare la pagina originale

File:Drum vibration mode22.gif

Da Wikipedia, l'enciclopedia libera.
Vai alla navigazione Vai alla ricerca

Drum_vibration_mode22.gif(248 × 130 pixel, dimensione del file: 239 KB, tipo MIME: image/gif, ciclico, 19 frame, 1,9 s)

Logo di Commons
Logo di Commons
Questo file e la sua pagina di descrizione (discussione · modifica) si trovano su Wikimedia Commons (?)
Descrizione Illustration of vibrations of a drum.
Data (UTC)
Fonte self-made with MATLAB
Autore Oleg Alexandrov
 
Questo diagramma in GIF grafica è stato creato con MATLAB.
Public domain Io, detentore del copyright su quest'opera, la rilascio nel pubblico dominio. Questa norma si applica in tutto il mondo.
In alcuni paesi questo potrebbe non essere legalmente possibile. In tal caso:
Garantisco a chiunque il diritto di utilizzare quest'opera per qualsiasi scopo, senza alcuna condizione, a meno che tali condizioni siano richieste dalla legge.

Source code (MATLAB)

function main()

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

 

   % 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_mode22.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!');

Didascalie

Aggiungi una brevissima spiegazione di ciò che questo file rappresenta

Elementi ritratti in questo file

raffigura

Cronologia del file

Fare clic su un gruppo data/ora per vedere il file come si presentava nel momento indicato.

Data/OraMiniaturaDimensioniUtenteCommento
attuale01:50, 5 nov 2023Miniatura della versione delle 01:50, 5 nov 2023248 × 130 (239 KB)ReneeWritesReverted to version as of 04:46, 16 January 2008 (UTC)
08:52, 5 apr 2023Miniatura della versione delle 08:52, 5 apr 2023252 × 165 (249 KB)Dndnrmn2Reverted to version as of 06:30, 12 January 2008 (UTC)
06:46, 16 gen 2008Miniatura della versione delle 06:46, 16 gen 2008248 × 130 (239 KB)Oleg AlexandrovStrip caption, looks better like this
08:30, 12 gen 2008Miniatura della versione delle 08:30, 12 gen 2008252 × 165 (249 KB)Oleg Alexandrov{{Information |Description=Illustration of vibrations of a drum. |Source=self-made with MATLAB |Date=06:21, 12 January 2008 (UTC) |Author= Oleg Alexandrov |Permission= |other_versions= }} {{PD-self

La seguente pagina usa questo file:

Utilizzo globale del file

Anche i seguenti wiki usano questo file: