Strona główna Dźwięk i Akustyka Fale stojące w rurach

🔊 Fale stojące w rurach

Zmieniaj długość piszczałki i wybierz koniec otwarty lub zamknięty, by zobaczyć dopasowane harmoniczne, węzły i strzałki oraz zmianę wysokości dźwięku fletu i organów.

Dźwięk i Akustyka3DŁatwy60 FPS
standing-waves ↗ Otwórz osobno
Interfejs samej symulacji jest w języku angielskim.

O tej symulacji

Symulacja rysuje strunę zamocowaną na obu końcach za pomocą shadera fragmentów GLSL. Dwie przeciwbieżne fale, A·sin(kx−ωt) i A·sin(kx+ωt), są sumowane piksel po pikselu; tożsamość trygonometryczna rządząca ich sumą sprowadza je do fali stojącej y(x,t) = 2A·sin(kx)·cos(ωt) — nieruchomej obwiedni przestrzennej, która jedynie pulsuje w czasie. Ponieważ oba końce są unieruchomione, liczba falowa musi spełniać kL = nπ dla liczb całkowitych n, więc istnieć mogą tylko dyskretne harmoniczne λₙ = 2L/n i częstotliwości fₙ = n·v/2L. Suwaki Harmonic, Amplitude, Tension/speed i Pluck pozwalają zmieniać n, A, prędkość fali v oraz domieszywać wyższe harmoniczne (2n, 3n), by przybliżyć szarpniętą strunę.

🔬 Co pokazuje

Shader renderuje jednocześnie trzy elementy: samą poruszającą się strunę (jasna cyjanowa krzywa), jej stałą obwiednię maksymalnej amplitudy (przerywany kontur) oraz, po włączeniu, dwie leżące u podstaw fale biegnące w prawo (ciepły kolor) i w lewo (zielony), których suma tworzy falę stojącą. Żółte kropki oznaczają stałe węzły (zerowe wychylenie), a kolumna strzałki jest zabarwiona różowo tam, gdzie wychylenie jest największe.

🎮 Jak korzystać

Przeciągnij Harmonic n (1–8), by wybrać mod; Amplitude ustala szczytową wysokość każdej fali biegnącej; Tension/wave speed v podnosi lub obniża częstotliwość fₙ = n·v/2L pokazywaną na bieżąco w statystykach. Przełącz Show component travelling waves, by zobaczyć dwie fale GLSL sumujące się w falę stojącą, lub przeciągnij Pluck, by domieszać drugą i trzecią wielokrotność n z wagą w stylu 1/m², naśladując szarpniętą strunę gitary lub fortepianu.

💡 Czy wiesz, że?

Harmoniczna n ma dokładnie n−1 wewnętrznych węzłów (n+1 licząc oba unieruchomione końce) i n strzałek — panel odczytu aktualizuje to na żywo jako „Nodes / Antinodes”. Ponieważ każda fₙ jest dokładną całkowitą wielokrotnością tonu podstawowego f₁, harmoniczne zamocowanej struny tworzą muzyczny szereg alikwotów, dlatego szarpnięte lub smyczkowane struny brzmią jak pojedynczy dźwięk, a nie szum.

Najczęściej zadawane pytania

Jak dwie fale biegnące składają się w falę stojącą?

Shader oblicza falę biegnącą w prawo A·sin(kx−ωt) oraz falę biegnącą w lewo A·sin(kx+ωt) i je sumuje. Korzystając z tożsamości sumy do iloczynu, sin(kx−ωt)+sin(kx+ωt) = 2·sin(kx)·cos(ωt): zależności od x i t się rozdzielają, więc każdy punkt struny nadal oscyluje w czasie (cos ωt), ale kształt przestrzenny sin(kx) nigdy się nie przemieszcza — dokładnie to oznacza „stojąca”.

Dlaczego struna może drgać tylko przy określonych długościach fali?

Oba końce struny są unieruchomione, więc wychylenie musi być zerowe w x=0 i x=L przez cały czas. Ten warunek brzegowy spełniają tylko kształty sinusoidalne z kL=nπ (n=1,2,3…), dające dyskretne długości fali λₙ=2L/n i częstotliwości fₙ=n·v/2L, przez które przechodzi suwak Harmonic tego symulatora. Żadna pośrednia długość fali nie może utworzyć stabilnego wzoru fali stojącej na strunie unieruchomionej na obu końcach.

Czym dokładnie są węzły i strzałki?

Węzeł to punkt, w którym sin(nπx/L)=0, więc wychylenie struny jest zerowe w każdej chwili — shader oznacza je żółtą kropką. Strzałka to miejsce, w którym |sin(nπx/L)|=1, punkt maksymalnego możliwego wychylenia, pokazany jako różowa kolumna sięgająca przerywanej obwiedni. Harmoniczna n zawsze ma n−1 węzłów ściśle między dwoma unieruchomionymi końcami i n strzałek.

Dlaczego zwiększenie Tension/wave speed zmienia wysokość dźwięku, ale nie kształt?

Częstotliwość fₙ=n·v/2L zależy od prędkości fali v (ustawianej suwakiem Tension/wave speed), podczas gdy pozycje węzłów i strzałek zależą wyłącznie od n i stałej długości struny L=0,65 m. Przesunięcie suwaka prędkości sprawia więc, że ten sam wyglądający wzór stojący drga szybciej lub wolniej — podnosząc lub obniżając wysokość fₙ — bez przesuwania choćby jednego węzła.

Jak sterowanie Pluck symuluje szarpniętą strunę?

Szarpnięcie prawdziwej struny wzbudza ton podstawowy oraz kaskadę wyższych harmonicznych o malejącej amplitudzie. Shader przybliża to, domieszując kształty fal stojących dla 2n i 3n przy odpowiednio 45% i 25% amplitudy podstawowej, sterowane wartością suwaka Pluck. Daje to ostrzejszy, bardziej trójkątny kształt struny i bogatszy nałożony ruch, charakterystyczny dla szarpniętej struny gitary lub fortepianu, zamiast czystego tonu sinusoidalnego.

Podobne symulacje