y(x,t) = 2A·sin(kx)·cos(ωt). Струна
закріплена з обох кінців, тож вміщуються лише довжини хвиль
λₙ = 2L/n, що дає частоти fₙ = n·v/2L.
Вузли залишаються в нулі; пучності коливаються між
пунктирною обвідною. Перемкніть дві біжучі хвилі ліворуч і праворуч або
защипніть струну, щоб накласти кілька гармонік одночасно.
Ця симуляція малює струну, закріплену з обох кінців, за допомогою GLSL‑фрагментного шейдера. Дві зустрічні біжучі хвилі, A·sin(kx−ωt) і A·sin(kx+ωt), підсумовуються піксель за пікселем; тригонометрична тотожність суми синусів перетворює їх на стоячу хвилю y(x,t)=2A·sin(kx)·cos(ωt) — нерухому просторову обвідну, яка лише пульсує в часі. Оскільки обидва кінці закріплені, хвильове число має задовольняти kL=nπ для цілих n, тож можливі лише дискретні гармоніки λₙ=2L/n і частоти fₙ=n·v/2L. Повзунки Гармоніка, Амплітуда, Натяг/швидкість і Щипок дозволяють змінювати n, A, швидкість хвилі v та домішувати вищі гармоніки (2n, 3n), наближаючи форму защипаної струни.
Шейдер одночасно малює три речі: саму рухому струну (яскрава блакитна крива), її нерухому обвідну максимальної амплітуди (пунктирний контур) і, за увімкнення перемикача, дві біжучі хвилі — праворуч (теплий колір) і ліворуч (зелений) — сума яких і дає стоячу хвилю. Жовті крапки позначають незмінні вузли (нульове зміщення), а стовпчик пучностей підсвічено рожевим там, де розмах найбільший.
Перетягуйте Гармоніку n (1–8), щоб обрати моду; Амплітуда задає пікову висоту кожної біжучої хвилі; Натяг/швидкість хвилі v підвищує або знижує частоту fₙ=n·v/2L, яка одразу оновлюється в панелі статистики. Увімкніть Показати складові біжучі хвилі, щоб побачити дві GLSL‑хвилі, що складаються в стоячий візерунок, або перетягніть Щипок, щоб домішати 2-у та 3-ю кратні гармоніки n з вагою на кшталт 1/m², імітуючи защипану струну гітари чи фортепіано.
Гармоніка n має рівно n−1 внутрішній вузол (n+1, якщо рахувати обидва закріплені кінці) і n пучностей — панель статистики оновлює це наживо як «Вузли / Пучності». Оскільки кожна fₙ є точним цілим кратним основної частоти f₁, гармоніки закріпленої струни утворюють музичний обертоновий ряд — саме тому защипана чи смичкова струна звучить як єдиний тон, а не як шум.
Шейдер обчислює хвилю, що рухається праворуч, A·sin(kx−ωt), і хвилю, що рухається ліворуч, A·sin(kx+ωt), і додає їх. За тотожністю суми синусів sin(kx−ωt)+sin(kx+ωt)=2·sin(kx)·cos(ωt): залежності від x та t розділяються, тож кожна точка струни й далі коливається в часі (cos ωt), але просторова форма sin(kx) нікуди не рухається — саме це і означає «стояча».
Обидва кінці струни закріплені, тож зміщення має дорівнювати нулю в x=0 і x=L у будь-який момент часу. Цій умові задовольняють лише синусоїдальні форми з kL=nπ (n=1,2,3…), що дає дискретні довжини хвиль λₙ=2L/n і частоти fₙ=n·v/2L, якими крокує повзунок Гармоніка. Будь-яка проміжна довжина хвилі не може утворити стійкий стоячий візерунок на струні, закріпленій з обох кінців.
Вузол — це точка, де sin(nπx/L)=0, тож зміщення струни дорівнює нулю в кожну мить — шейдер позначає їх жовтою крапкою. Пучність — це точка, де |sin(nπx/L)|=1, точка максимально можливого розмаху, показана рожевим стовпчиком, що сягає пунктирної обвідної. Гармоніка n завжди має n−1 вузол строго між двома закріпленими кінцями і n пучностей.
Частота fₙ=n·v/2L залежить від швидкості хвилі v (яку задає повзунок Натяг/швидкість), тоді як положення вузлів і пучностей залежать лише від номера гармоніки n та фіксованої довжини струни L=0.65 м. Тому зсув повзунка швидкості змушує однаковий на вигляд стоячий візерунок коливатися швидше чи повільніше — підвищуючи чи знижуючи висоту тону fₙ — не зсуваючи жодного вузла.
Защипування реальної струни збуджує основну частоту разом із каскадом вищих гармонік спадної амплітуди. Шейдер наближає це, домішуючи форми стоячих хвиль для 2n і 3n з вагою 45% і 25% від базової амплітуди відповідно, керовану повзунком Щипок. Це створює гострішу, трикутнішу форму струни та багатший накладений рух, характерний для защипаної струни гітари чи фортепіано, а не для чистого синусоїдального тону.