File:Drum vibration mode02.gif
Iš Wikimedia Commons.
Pereiti į navigaciją
Jump to search
Drum_vibration_mode02.gif (252 × 169 taškų, rinkmenos dydis: 200 KiB, MIME tipas: image/gif, ciklinis, 19 kadrų, 1,9 s)
File information
Structured data
Captions
AprašymasDrum vibration mode02.gif | Illustration of vibrations of a drum. |
Data | (UTC) |
Šaltinis | self-made with MATLAB |
Autorius | Oleg Alexandrov |
Kitos versijos | Derivative works of this file: Membrane-normal-modes.gif |
Šis GIF paveikslėlis sukurtas su MATLAB.
Public domainPublic domainfalsefalse |
Aš, šio darbo autorinių teisių savininkas, šį darbą skelbiu viešo naudojimo. Tai galioja visame pasaulyje. Kai kuriose šalyse tai negali būti legaliai leidžiama; jei taip: Suteikiu teisę naudoti šį darbą bet kokiai paskirčiai, be jokių sąlygų, nebent jos reikalaujamos įstatymų. |
Source code (MATLAB)[keisti]
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!');
Rinkmenos istorija
Paspauskite ant datos/laiko, kad pamatytumėte rinkmeną tokią, kokia ji buvo tuo metu.
Data/Laikas | Miniatiūra | Matmenys | Naudotojas | Paaiškinimas | |
---|---|---|---|---|---|
dabartinis | 11:12, 18 kovo 2023 | 252 × 169 (200 KiB) | Dndnrmn1 (aptarimas | indėlis) | Reverted to version as of 06:25, 12 January 2008 (UTC) | |
04:44, 16 sausio 2008 | 248 × 130 (191 KiB) | Oleg Alexandrov (aptarimas | indėlis) | Strip caption, looks better like this | ||
06:25, 12 sausio 2008 | 252 × 169 (200 KiB) | Oleg Alexandrov (aptarimas | indėlis) | |||
06:21, 12 sausio 2008 | 253 × 194 (202 KiB) | Oleg Alexandrov (aptarimas | indėlis) | {{Information |Description=Illustration of vibrations of a drum. |Source=self-made with MATLAB |Date=~~~~~ |Author= Oleg Alexandrov |Permission= |other_versions= }} {{PD-self}} ==Source code ([[: |
Jūs negalite perrašyti šios rinkmenos.
Rinkmenos naudojimas
Šie puslapiai naudoja šią rinkmeną:
Visuotinis rinkmenos naudojimas
Ši rinkmena naudojama šiose viki svetainėse:
- Naudojama ast.wikipedia.org
- Naudojama bs.wikipedia.org
- Naudojama ca.wikipedia.org
- Naudojama de.wikipedia.org
- Naudojama el.wikipedia.org
- Naudojama en.wikipedia.org
- Naudojama en.wikiversity.org
- Naudojama es.wikipedia.org
- Naudojama fr.wikipedia.org
- Naudojama ko.wikipedia.org
- Naudojama ru.wikipedia.org
- Naudojama sh.wikipedia.org
- Naudojama sq.wikipedia.org
- Naudojama sr.wikipedia.org
- Naudojama te.wikipedia.org
- Naudojama zh.wikipedia.org