Skeda:Drum vibration mode22.gif

Page contents not supported in other languages.
Nga Wikipedia, enciklopedia e lirë

Drum_vibration_mode22.gif((përmasa 248 × 130 px, madhësia skedës: 239 KB, lloji MIME: image/gif), kthyer, 19 korniza, 1,9 s)

Kjo skedë është prej Wikimedia Commons dhe mund të përdoret nga projekte të tjera. Përshkrimi në këtë skedë në këtë faqe nuk është treguar më poshtë. Shko tek faqja përshkruese në Commons Shko tek faqja përshkruese në Commons

Përshkrimi Illustration of vibrations of a drum.
Data (UTC)
Burimi self-made with MATLAB
Autori Oleg Alexandrov
 
This diagram was created with MATLAB.
Public domain Unë,krijuesi i kësaj pune, e lëshoj këtë punë në public domain. Kjo aplikohet në të gjithë botën.
Në disa vende kjo mund të mos jetë e mundur ligjërisht; nëse është kështu:
Unë i garantoj çdokujt të drejtën për ta përdorur këtë punë për çdo qëllim, pa asnjë kusht, përveç rasteve kur këto kushte janë të kërkuara nga ligji.

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

Captions

Add a one-line explanation of what this file represents

Items portrayed in this file

përshkruan

12 janar 2008

Historiku skedës

Shtypni mbi një datë/kohë për ta parë skedën siç ishte atëherë.

Data/KohaMiniaturëPërmasatPërdoruesiKoment
e tanishme5 nëntor 2023 01:50Miniaturë për versionin duke filluar nga 5 nëntor 2023 01:50248 × 130 (239 KB)ReneeWritesReverted to version as of 04:46, 16 January 2008 (UTC)
5 prill 2023 08:52Miniaturë për versionin duke filluar nga 5 prill 2023 08:52252 × 165 (249 KB)Dndnrmn2Reverted to version as of 06:30, 12 January 2008 (UTC)
16 janar 2008 06:46Miniaturë për versionin duke filluar nga 16 janar 2008 06:46248 × 130 (239 KB)Oleg AlexandrovStrip caption, looks better like this
12 janar 2008 08:30Miniaturë për versionin duke filluar nga 12 janar 2008 08:30252 × 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

Këto faqe lidhen tek kjo skedë:

Përdorimi global i skedës

Kjo skedë përdoret nga Wiki të tjera në vijim: