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

Материал из CAMaaS preliminary wiki
Перейти к навигации Перейти к поиску
 
(не показано 14 промежуточных версий 2 участников)
Строка 5: Строка 5:
Направленность такого источника рассчитывается с помощью интеграла Релея:
Направленность такого источника рассчитывается с помощью интеграла Релея:


<math>\varphi\left(\theta, \varphi, r\right) = \frac{V_0 e^{i\cdot\left(\omega t-\varphi\right)}}{2\pi}\iint\limits_{D}{\frac{e^{-ikr'\left(\theta, \varphi, r\right)}}{r'\left(\theta, \varphi, r\right)}dS}</math>,
<math>\varphi\left(\theta, \varphi, r\right) = \frac{V_0 e^{i\cdot\left(\omega t+\varphi\right)}}{2\pi}\iint\limits_{S}{\frac{e^{-ikr'\left(\theta, \varphi, r\right)}}{r'\left(\theta, \varphi, r\right)}dS}</math>,


где:
где:
Строка 30: Строка 30:
Течение алгоритма:
Течение алгоритма:
# <math>SC' \gets SC</math> - изменяемое множество <u>всех</u> [[Архитектурная акустика/Источник|источников]].
# <math>SC' \gets SC</math> - изменяемое множество <u>всех</u> [[Архитектурная акустика/Источник|источников]].
# Для всех источников <math>s\in SC</math>
# Если <tt>SC'</tt> пусто.
## Завершение алгоритма.
# Для всех источников <math>s\in SC'</math>
## <math>SC' \gets SC' \setminus s</math>
## Пусть множество лучей: <tt>RS = s.Излучаемый звук()</tt>
## Пусть множество лучей: <tt>RS = s.Излучаемый звук()</tt>
## Для всех лучей <math>r\in RS</math>
## Для всех лучей <math>r\in RS</math>
### Если <math>\exists</math><tt>f = r.Ближайшая поверхность(PC)</tt>
### Если <tt>r.Интенсивность() > M.Пренебрежимый уровень звука()</tt>
#### Пусть <math>f'</math> - плоская круглая поверхность диаметром, равным длине волны звука, ассоциированного с лучом <math>r</math> (см. <tt>r.[[Архитектурная акустика/Луч|Частота()]]</tt>), вокруг точки пересечения <math>f\cap f'</math>.
#### <math>PlC' = \left\{pl_i\right\}\subset PlC: \exists pt = pl_i\cap r\land</math><tt>расстояние(r.Позиция(), pt)</tt><math>\leq</math><tt>расстояние(r.Позиция(), r.Ближайшая поверхность(PC)</tt><math>\cap</math><tt>r)</tt> - множество плоскостей вывода результатов, с которыми существуют пересечения луча <math>r</math>, и которые не находятся в тени.
#### <tt>s' = [[Архитектурная акустика/Вторичный источник на основе интеграла Релея|Вторичный источник на основе интеграла Релея]]</tt><math>(f\cap f', r, f \cap r)</math>
#### <math>SC' \gets SC' \cup \left\{s'\right\}</math> - дополнение множества <tt>SC'</tt> новым вторичным источником <tt>s'</tt>
### <math>PlC' = \left\{pl_i\right\}\subset PlC: \exists pt = pl_i\cap r\land</math><tt>расстояние(r.Позиция(), pt)</tt><math>\leq</math><tt>расстояние(r.Позиция(), r.Ближайшая поверхность(PC)</tt><math>\cap</math><tt>r)</tt> - множество плоскостей вывода результатов, с которыми существуют пересечения луча <math>r</math>, и которые не находятся в тени.
#### Для всех плоскостей <math>pl\in PlC'</math>
#### Для всех плоскостей <math>pl\in PlC'</math>
##### Точка пересечения <math>pt \gets pl\cap r</math>
##### Точка пересечения <math>pt \gets pl\cap r</math>
##### <tt>pl.Зарегистрировать звук(pt, r.Интенсивность(расстояние(r.Позиция(), pt)), r.Частота())</tt>
##### <math>I\gets</math><tt>r.Интенсивность(расстояние(r.Позиция(), pt))</tt>
##### Если <math>I > </math><tt>M.Пренебрежимый уровень звука()</tt>
###### <tt>pl.Зарегистрировать звук(pt, I, r.Частота())</tt>
#### Если <math>\exists</math><tt>f = r.Ближайшая поверхность(PC)</tt>
##### Пусть <math>P\gets f\cap r</math>
##### Если <tt>r.Интенсивность(расстояние(r.Позиция(), P)) > M.Пренебрежимый уровень звука()</tt>
###### Пусть <math>f'</math> - плоская круглая поверхность диаметром, равным длине волны звука, ассоциированного с лучом <math>r</math> (см. <tt>r.[[Архитектурная акустика/Луч|Частота()]]</tt>), вокруг точки пересечения P.
###### <tt>s' = [[Архитектурная акустика/Вторичный источник на основе интеграла Релея|Вторичный источник на основе интеграла Релея]]</tt><math>(f\cap f', r, f \cap r)</math>
###### <math>SC' \gets SC' \cup \left\{s'\right\}</math> - дополнение множества <tt>SC'</tt> новым вторичным источником <tt>s'</tt>
#Переход на шаг 2.
 
[[Файл:ArchAc-RelayParFlow.jpg|thumb|800px|Граф параллельного выполнения алгоритма. Для краткости используются сокращенные записи методов сущностей [[Архитектурная акустика|архитектурной акустики]]:
<math>I\left(r\right)\sim r</math><tt>.[[Архитектурная акустика/Луч|Интенсивность]]()</tt>;
<math>I\left(r, pt\right)\sim r</math><tt>.[[Архитектурная акустика/Луч|Интенсивность]](расстояние(r.[[Архитектурная акустика/Луч|Позиция]](), pt))</tt>;
<math>I_0\sim M</math><tt>.[[Архитектурная акустика/Среда распространения звука|Пренебрежимый уровень звука]]()</tt>;
<math>\omega\left(r\right)\sim r</math><tt>.[[Архитектурная акустика/Луч|Частота]]()</tt>;
<math>pl.Reg\left(pt, I, \omega\right)\sim pl</math><tt>.[[Архитектурная акустика/Секущая плоскость вывода результатов|Зарегистрировать звук]]</tt><math>\left(pt, I, \omega\right)</math>;]]


=Свойства алгоритма=
=Свойства алгоритма=
Строка 48: Строка 64:
Пусть <math>R_s = \sum\limits_{i=1}^{|S|}|s_i.</math><tt>Излучаемый звук()</tt><math>|</math> - суммарное количество лучей от всех первичных источников.
Пусть <math>R_s = \sum\limits_{i=1}^{|S|}|s_i.</math><tt>Излучаемый звук()</tt><math>|</math> - суммарное количество лучей от всех первичных источников.


Тогда сложность: <math>O\left(R_s^{\frac{\max\limits_{i=1,N_s}\left(I(s_i)\right)}{I_0}}\right)</math>, где <math>I\left(s\right) = \max\limits_{\forall\omega\in B\left(s\right)}</math><tt>(s.Интенсивность(0, 0, <math>\omega</math>))</tt> - максимальное значение характеристики звука, излучаемого источником <math>s</math> по частотам <math>B\left(s\right)</math>, на которых определена его АЧХ, <math>I_0</math> - пренебрежимый уровень звука (свойство [[Архитектурная акустика/Среда распространения звука|среды распространения]]).
Тогда сложность: <math> N_{total} = 1 + \frac{N \cdot(1-(\tau N)^{n_{r}-1})}{1-\tau N} ,</math> где
 
<math> n_r =  \log_{\nu}\frac{I_0}{I}</math> - число переотражений,    <math>I_0</math> - пороговое значение энергии, <math>I</math> - начальное значение энергии,
 
 
<math>\nu=\frac{\sum_{\forall f\in F} S(f) \cdot \nu(f)}{\sum_{\forall f\in F} S(f)}</math> - средний коэффициент поглощения,
 
 
<math> N=|W(s_i)|\cdot \sum_{\forall f\in F} |f|, </math> (где <math>|W(s_i)|\sim s_i</math> - ширина полосы частот(), <math>f</math>- множество отражающих элементов() ),
так как
 
<math>1 \to N \to N \cdot \tau N \to \cdots \to N \cdot (\tau N)^{n_r}</math>

Текущая версия на 22:56, 7 ноября 2016

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

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

Направленность такого источника рассчитывается с помощью интеграла Релея:

,

где:

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


Алгоритм

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

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

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

  1. - изменяемое множество всех источников.
  2. Если SC' пусто.
    1. Завершение алгоритма.
  3. Для всех источников
    1. Пусть множество лучей: RS = s.Излучаемый звук()
    2. Для всех лучей
      1. Если r.Интенсивность() > M.Пренебрежимый уровень звука()
        1. расстояние(r.Позиция(), pt)расстояние(r.Позиция(), r.Ближайшая поверхность(PC)r) - множество плоскостей вывода результатов, с которыми существуют пересечения луча , и которые не находятся в тени.
        2. Для всех плоскостей
          1. Точка пересечения
          2. r.Интенсивность(расстояние(r.Позиция(), pt))
          3. Если M.Пренебрежимый уровень звука()
            1. pl.Зарегистрировать звук(pt, I, r.Частота())
        3. Если f = r.Ближайшая поверхность(PC)
          1. Пусть
          2. Если r.Интенсивность(расстояние(r.Позиция(), P)) > M.Пренебрежимый уровень звука()
            1. Пусть - плоская круглая поверхность диаметром, равным длине волны звука, ассоциированного с лучом (см. r.Частота()), вокруг точки пересечения P.
            2. s' = Вторичный источник на основе интеграла Релея
            3. - дополнение множества SC' новым вторичным источником s'
  4. Переход на шаг 2.
Граф параллельного выполнения алгоритма. Для краткости используются сокращенные записи методов сущностей архитектурной акустики: .Интенсивность(); .Интенсивность(расстояние(r.Позиция(), pt)); .Пренебрежимый уровень звука(); .Частота(); .Зарегистрировать звук;

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

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

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

Тогда сложность: где

- число переотражений, - пороговое значение энергии, - начальное значение энергии,


- средний коэффициент поглощения,


(где - ширина полосы частот(), - множество отражающих элементов() ),

так как