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

Материал из CAMaaS preliminary wiki
Перейти к навигации Перейти к поиску
 
(не показано 10 промежуточных версий 2 участников)
Строка 7: Строка 7:
##Для <math>\forall ~ \rho_i \in </math> G.Множество плоскостей вывода результатов()
##Для <math>\forall ~ \rho_i \in </math> G.Множество плоскостей вывода результатов()
###Для <math>\forall ~ p \in \rho_i</math>
###Для <math>\forall ~ p \in \rho_i</math>
####Для <math>\forall ~ k \in </math> [<math>0,s_i.</math>Ширина полосы частот())
####<math>\omega \leftarrow s_i.</math>Частота(<math>k</math>)
####<math>D \leftarrow p - s_i.</math>Позиция()
####<math>D \leftarrow p - s_i.</math>Позиция()
####Для <math>\forall ~ r \in </math> G.Множество отражающих объектов()
####Для <math>\forall ~ r \in </math> G.Множество отражающих объектов()
####Для <math>\forall ~ f \in r.</math>Множество поверхностей()
#####Для <math>\forall ~ f \in r.</math>Множество поверхностей()
####Если <math>\nexists t=\vec{D}\cap f</math> или расстояние <math>(s_i,t)\ge |\vec{D}|</math>
######Если <math>\exists t=\vec{D}\cap f</math> И расстояние <math>(s_i,t)< |\vec{D}|</math>
####<math>\rho_i.</math> Зарегистрировать звук (<math>s_i.</math> Интенсивность (Азимут <math>\vec{D},</math> Зенит<math>\vec{D},\omega),0,\omega)</math>
#######Перейти на шаг 1.1.1
####Для <math>\forall ~ k \in </math>[<math>0,s_i.</math>Ширина полосы частот())
#####<math>\omega \leftarrow s_i.</math>Частота(<math>k</math>)
#####<math>\rho_i.</math> Зарегистрировать звук (<math>s_i.</math> Интенсивность (Азимут <math>\vec{D},</math> Зенит<math>\vec{D},\omega),0,\omega)</math>
##Для <math>\forall ~ r \in </math> G.Множество отражающих объектов()
##Для <math>\forall ~ r \in </math> G.Множество отражающих объектов()
###Для <math>\forall ~ f \in r.</math> G.Множество поверхностей()
###Для <math>\forall ~ f \in r.</math> G.Множество поверхностей()
####Для <math>\forall ~ ??? \in f.</math> G.Множество отражающих элементов(Шаг дискретизации)
####Для <math>\forall ~ t \in f.</math> G.Множество отражающих элементов(Шаг дискретизации)
#####Для <math>\forall ~ k \in ???</math> ???
#####Для <math>\forall ~ k \in </math>[<math>0,s_i.</math>Ширина полосы частот())
#####<math>\omega \leftarrow s_i.</math>Частота(<math>k</math>)
######<math>\omega \leftarrow s_i.</math>Частота(<math>k</math>)
######<math>\vec{D} =\vec{t}-s_i.</math>Позиция()
######<math>\vec{D} =\vec{t}-s_i.</math>Позиция()
######<math>I\leftarrow s_i.</math>Интенсивность(Азимут<math> \vec{D},</math> Зенит<math>\vec{D},\omega</math>)
######<math>I\leftarrow s_i.</math>Интенсивность(Азимут<math> \vec{D},</math> Зенит<math>\vec{D},\omega</math>)
######<math>\vec{D'} \leftarrow</math>Отразить<math>\vec{D'},t</math>
######<math>\vec{D'} \leftarrow</math>Отразить<math>\vec{D'},t</math>
######<math>I' \leftarrow ???</math>Отразить??? (коэффициент отражения<math>(\omega)</math>),<math>I</math>
######<math>I' \leftarrow (1-f.</math>коэффициент отражения<math>(\omega))\cdot I</math>
######Для <math>\forall ~ \rho_i \in </math> G.Множество плоскостей ()
######Если <math>I' > G</math><tt>.Минимальный уровень звука()</tt>
#######
#######Для <math>\forall ~ \rho_i \in </math> G.Множество плоскостей ()
########
########Если <math>\exists p=\alpha\vec{D'}\cap \rho_i, 0 < \alpha < \infty</math> и если не в_тени<math>(t,p,G)</math>
######
######### <math> \rho_i.</math> Зарегистрировать<math>( \frac{I'}{|t-p|^2},p,\omega)</math>
#######
#######Для <math>\forall ~ r' \in </math> G.Множество отражающих объектов ()
########Для <math>\forall ~ f' \in r'</math> .Множество поверхностей()
#########Если <math>\exists t'=\beta\vec{D'}\cap f', 0 < \beta < \infty</math>
##########Если не В_тени (t,t',G)
###########<math>D' \leftarrow </math> Отразить  <math>(D',f')</math>
########### <math>I' \leftarrow \frac{I'(1-f'.absorptance(\omega))}{|t-t'|^2}</math>
###########<math>t \leftarrow t'</math>
###########Переход на ш. 1.2.1.1.1.6


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

Текущая версия на 16:12, 6 декабря 2016

Архитектурная акустика\Рей-трейсинг

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

Алгоритм

  1. Для G.Множество первичных источников()
    1. Для G.Множество плоскостей вывода результатов()
      1. Для
        1. Позиция()
        2. Для G.Множество отражающих объектов()
          1. Для Множество поверхностей()
            1. Если И расстояние
              1. Перейти на шаг 1.1.1
        3. Для [Ширина полосы частот())
          1. Частота()
          2. Зарегистрировать звук ( Интенсивность (Азимут Зенит
    2. Для G.Множество отражающих объектов()
      1. Для G.Множество поверхностей()
        1. Для G.Множество отражающих элементов(Шаг дискретизации)
          1. Для [Ширина полосы частот())
            1. Частота()
            2. Позиция()
            3. Интенсивность(Азимут Зенит)
            4. Отразить
            5. коэффициент отражения
            6. Если .Минимальный уровень звука()
              1. Для G.Множество плоскостей ()
                1. Если и если не в_тени
                  1. Зарегистрировать
              2. Для G.Множество отражающих объектов ()
                1. Для .Множество поверхностей()
                  1. Если
                    1. Если не В_тени (t,t',G)
                      1. Отразить
                      2. Переход на ш. 1.2.1.1.1.6

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