Архитектурная акустика/Интеграл Релея (версия Кулигина): различия между версиями

Материал из CAMaaS preliminary wiki
Перейти к навигации Перейти к поиску
Строка 25: Строка 25:
# <tt>SC = M.Множество [[Архитектурная акустика/Первичный источник|источников]]()</tt>;
# <tt>SC = M.Множество [[Архитектурная акустика/Первичный источник|источников]]()</tt>;
# <tt>PC = M.Множество [[Архитектурная акустика/Объемный геометрический объект|отражающих элементов]]()</tt>
# <tt>PC = M.Множество [[Архитектурная акустика/Объемный геометрический объект|отражающих элементов]]()</tt>
# <tt>PlC = M.Множество [[Архитектурная акустика/Секущая плоскость вывода результатов|контрольных точек]]()</tt> - множество плоскостей вывода результатов.
# <tt>PlC = M.Множество [[Архитектурная акустика/Секущая плоскость вывода результатов|множество секущих плоскостей]]()</tt> - множество плоскостей вывода результатов.
# <tt>расстояние(точка1, точка2)</tt> - функция расстояния между двумя точками.
# <tt>расстояние(точка1, точка2)</tt> - функция расстояния между двумя точками.
# Пусть <math>dx(\lambda)=\lambda\cdot c</math>, где <math>\lambda</math> - длина волны, <math>c</math> - входной параметр-коэффициент.
# Пусть <math>dx(\lambda)=\lambda\cdot c</math>, где <math>\lambda</math> - длина волны, <math>c</math> - входной параметр-коэффициент.
Строка 39: Строка 39:
##для всех k от 0 до <math>s_j</math> <tt>.[[Архитектурная акустика/Источник с характеристикой направленности| Ширина полосы частот()]]</tt> -1
##для всех k от 0 до <math>s_j</math> <tt>.[[Архитектурная акустика/Источник с характеристикой направленности| Ширина полосы частот()]]</tt> -1
###<math>\omega \gets s_j</math><tt>.[[Архитектурная акустика/Источник с характеристикой направленности|Частота(k)]]</tt>
###<math>\omega \gets s_j</math><tt>.[[Архитектурная акустика/Источник с характеристикой направленности|Частота(k)]]</tt>
##Для всех <math>Pl \in PlC</math>
###Для всех  <math>\stackrel{\to}{P_t}\in \stackrel{\to}{Pl}</math>. Множество контрольных точек <math>\omega</math>
###<math>\stackrel{\to}{D_1}=\stackrel{\to}{P_t}-s_j</math><tt>. Позиция()</tt> <math>P_s\gets s_j</math><tt>.Позиция()</tt>
###<math>I_0\gets s_j</math><tt>.Интенсивность(азимут(<math>\stackrel{\to}{D_1}</math>), зенит(<math>\stackrel{\to}{D_1}</math>), <math>\omega</math></tt>)
###<math>Pl </math>. Зарегистрировать звук <math>(\stackrel{\to}{P_t},I_0,\omega)</math>
##Пусть <math>F \gets PC</math><tt>[[Архитектурная акустика/Поверхность|.множество поверхностей]]</tt> (<math>dx(\omega)</math>)
##Пусть <math>F \gets PC</math><tt>[[Архитектурная акустика/Поверхность|.множество поверхностей]]</tt> (<math>dx(\omega)</math>)
##Для всех  <math>\Delta x \in F</math>
###Для всех  <math>\Delta x \in F</math>
## <math>\stackrel{\to}{D}=\stackrel{\to}{\Delta x}-s_j</math><tt>.Позиция()</tt> <math>P_s\gets s_j</math><tt>.Позиция()</tt>
### <math>\stackrel{\to}{D}=\stackrel{\to}{\Delta x}-s_j</math><tt>.Позиция()</tt> <math>P_s\gets s_j</math><tt>.Позиция()</tt>
##<math>I_0\gets s_j</math><tt>.Интенсивность(азимут(<math>\stackrel{\to}{D}</math>), зенит(<math>\stackrel{\to}{D}</math>), <math>\omega</math></tt>)
###<math>I_0\gets s_j</math><tt>.Интенсивность(азимут(<math>\stackrel{\to}{D}</math>), зенит(<math>\stackrel{\to}{D}</math>), <math>\omega</math></tt>)
## Пусть <math>r_i</math> - луч на основе <math>\stackrel{\to}{D},\omega,I_0,\beta</math>
### Пусть <math>r_i</math> - луч на основе <math>\stackrel{\to}{D},\omega,I_0,\beta</math>
###Если интенсивность луча <math>r_i</math>  меньше какого-либо порогового значения, то перейти на шаг 7.2, иначе:
###Если интенсивность луча <math>r_i</math>  меньше какого-либо порогового значения, то перейти на шаг 7.2, иначе:
####Каждый излученный луч проверяется на пересечение с другими полигонами, т.е. на наличие тени.
####Каждый излученный луч проверяется на пересечение с другими полигонами, т.е. на наличие тени.
####Луч пересекает отражающий элемент, возбуждая колебания с определенной фазой в зависимости от того, с какой фазой на него упал луч. В формуле (1) имеем: <math>\frac{\partial\varphi}{\partial\stackrel{\to}{n}}=(grad \varphi_1,\stackrel{\to}{n})=-ike^{i(\omega t-\stackrel{\to}{k}\stackrel{\to}{r_1})}\cos \widehat{\stackrel{\to}{r_1},\stackrel{\to}{n}}</math>
####Луч пересекает отражающий элемент, возбуждая колебания с определенной фазой в зависимости от того, с какой фазой на него упал луч. В формуле (1) имеем: <math>\frac{\partial\varphi}{\partial\stackrel{\to}{n}}=(grad \varphi_1,\stackrel{\to}{n})=-ike^{i(\omega t-\stackrel{\to}{k}\stackrel{\to}{r_1})}\cos \widehat{\stackrel{\to}{r_1},\stackrel{\to}{n}}</math>
####Каждый отражающий элемент становится источником <math>s'_i</math> с определенными характеристиками (объемной скоростью колебаний), т.е. <math>SC' \gets SC' \cup\left\{s'_i\right\}</math>.  
####Каждый отражающий элемент становится источником <math>s'_i</math> с определенными характеристиками (объемной скоростью колебаний), т.е. <math>SC' \gets SC' \cup\left\{s'_i\right\}</math>.  
{{todo|Использовать отдельный цикл для регистрации источников на плоскости вывода результатов, используя ее свойство [[Архитектурная акустика/Секущая плоскость вывода результатов|Множество контрольных точек]]|Нина}}


#Конец цикла
#Конец цикла

Версия 17:05, 21 июня 2016

Архитектурная акустика\Интеграл Релея (версия Кулигина)

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

Является вариантом реализации модели расчета акустического поля, в котором, в отличие от исходной версии вся поверхность помещения разбивается на элементы малой площади. В модели анализируется влияние каждого имеющегося источника звука на каждый возможный элемент излучения . Каждый источник оказывает влияние на каждый элемент , если только не находится в тени источника , и влияние этого источника на поверхность не падает ниже пренебрежимого уровня звука модели среды распространения. Если влияние действительно имеется, элемент сам становится источником отраженного звука. Направленность такого источника рассчитывается с помощью интеграла Релея:

на сфере , где:

  • - потенциал колебательной скорости в точке, заданной в сферической системе координат, в которой - единичный вектор сонаправленный главной оси источника.
  • - поверхность или ее часть, которая колеблется как поршень.
  • - малый элемент поверхности в окрестности некоторой точки , принадлежащей поверхности и заданной в системе координат поверхности, в которой аппликата сонаправлена главной оси источника.
  • - проекция градиента потенциала колебательной скорости на нормаль к . Фактически является нормальной составляющей колебательной скорости источника
  • .
  • .


Алгоритм

Предусловия:

  1. - коэффициент ослабления
  2. N - порядок источника, принимает значения от 1 для первичного источника и до бесконечности
  3. Пусть M - среда распространения звука
  4. SC = M.Множество источников();
  5. PC = M.Множество отражающих элементов()
  6. PlC = M.Множество множество секущих плоскостей() - множество плоскостей вывода результатов.
  7. расстояние(точка1, точка2) - функция расстояния между двумя точками.
  8. Пусть , где - длина волны, - входной параметр-коэффициент.

Течение алгоритма:

  1. Задаются полигоны всех поверхностей помещения.
  2. Разбитие всех полигонов поверхностей помещения на элементы (источники) с некоторыми линейными размерами, которое зависит от частоты рассчитываемого тона.
  3. Задаются контрольные плоскости вывода результата.
  4. - временное множество источников, для хранения первичных и вторичных источников SC'
  5. Для всех источников (цикл):
    1. создает лучи во все отражающие элементы - источники следующего порядка.
    2. для всех k от 0 до . Ширина полосы частот() -1
      1. .Частота(k)
    3. Для всех
      1. Для всех . Множество контрольных точек
      2. . Позиция() .Позиция()
      3. .Интенсивность(азимут(), зенит(), )
      4. . Зарегистрировать звук
    4. Пусть .множество поверхностей ()
      1. Для всех
      2. .Позиция() .Позиция()
      3. .Интенсивность(азимут(), зенит(), )
      4. Пусть - луч на основе
      5. Если интенсивность луча меньше какого-либо порогового значения, то перейти на шаг 7.2, иначе:
        1. Каждый излученный луч проверяется на пересечение с другими полигонами, т.е. на наличие тени.
        2. Луч пересекает отражающий элемент, возбуждая колебания с определенной фазой в зависимости от того, с какой фазой на него упал луч. В формуле (1) имеем:
        3. Каждый отражающий элемент становится источником с определенными характеристиками (объемной скоростью колебаний), т.е. .
  1. Конец цикла

Свойства алгоритма

Пусть - множество первичных источников (см. свойство множество источников() среды распространения звука).

Пусть Излучаемый звук() - суммарное количество лучей от всех первичных источников.

Тогда сложность: , где (s.Интенсивность(0, 0, )) - максимальное значение характеристики звука, излучаемого источником по частотам , на которых определена его АЧХ, - пренебрежимый уровень звука (свойство среды распространения).