Акустическое моделирование с помощью матрицы линий передач

Грэг Дункан

Сегодняшний проект Кеннета Хогланда (Kenneth Haugland) необычен и не принадлежит к категории, о которой я часто пишу (или возможно вообще не пишу), но он привлекательный, интересный и c ним интересно поиграть.

Матрица линий передачи для акустического моделирования

Моделирование акустических волн – тема повышенного интереса во многих областях, но это сложно сделать с минимальными затратами вычислительной мощности. Среди методов моделирования есть несколько кандидатов, каждый из них, как мы увидим, имеет свои плюсы и минусы. Одним из самых точных методов моделирования является метод матрицы линии передачи (Transmission Line Matrix, TLM), поскольку он способен смоделировать любую ситуацию с корректными входными условиями. Некоторые наиболее известные в акустике методы перечислены в списке:

· Алгоритм трассировки путей

· FDTD – Finite Difference Time-Domain (метод конечных разностей во временной области)

· TLM – Transmission Line Matrix (матрица линии передачи)

· FEM – Finite Element Method (метод конечных элементов)

· BEM – Boundary Element Method (метод граничных элементов)

Трассировка лучей обычно используется при расчете акустики концертных залов, поскольку основная проблемная область (доступные частоты) часто попадает в диапазон, где применима трассировка лучей. В общем это доступно для области высоких частот, где может находится достаточно большая часть спектра.

Так называемый метод конечных разностей во временной области (Finite Difference Time Domain, FDTD) в действительности точно такой же, как и TLM, поскольку первый решает волновое уравнение, в то время как TLM обеспечивает физическую модель распространения, это означает, что ограничения и преимущества одинаковы у обоих. Необходимо отметить, что TLM и FDTD могут использоваться как в акустике, так и в электродинамике, поскольку оба относятся к волнам, которые можно смоделировать с помощью напряжений и токов в электромагнетизме, а также давлений и скоростей частиц в акустике.

Метод FEM очень популярен во многих коммерческих продуктах, и особенно полезен для моделирования волнового уравнения в области низких частот, поскольку этот метод должен иметь точки, согласующиеся с частотами, которые от моделирует. Метод FEM решает волновое уравнение Гельмгольца, в котором сначала надо задать частоты, для которых вы желаете решить его.

Метод BEM особенно популярен для нахождения точных решений частных задач, например, распространение звуковых волн через щели и другие отверстия. Он очень быстро сходится для разных геометрий, используется в простых случаях и в глубине является аналитическим.

Цель данной статьи показать, как просто можно сделать волновое моделирование и насколько интуитивен процесс моделирования.

image

image

...

Обязательно ознакомьтесь со всей статьей. В ней содержится много информации, подробностей и описание математического аппарата.

Также доступен исходник (на VB.Net и C#), который у меня запустился сразу. Структура данного проекта проста, и позволяет сосредоточиться на реальных сложностях…

image

Замечание. Если вы ухватитесь за это, щелкните на закладке 2D. 3D только отображается (можно сказать, я потратил порядочно времени, пытаясь уйти с закладки 3D :/ )

Хотя можно сразу приступить к живому моделированию, более интересно перед этим добавить источники, стены и т. д., а затем уже стартовать.

image

image

Итак, хотя это, возможно, не совсем то, что нужно большинству, код и вычисления довольно интересны, и бьюсь об заклад, мы многому можем научиться из этого проекта.