Распространение радиоволн ВЧ/Рей-трейсинг: различия между версиями
Перейти к навигации
Перейти к поиску
Nigiluk (обсуждение | вклад) |
Nigiluk (обсуждение | вклад) |
||
Строка 29: | Строка 29: | ||
==Основной цикл программы | Вариант 1== | ==Основной цикл программы | Вариант 1== | ||
#<math>S \leftarrow </math> <tt>[[Распространение радиоволн ВЧ/Источник|набор источников()]]</tt> | #<math>S \leftarrow </math> <tt>[[Распространение радиоволн ВЧ/Источник|набор источников()]]</tt> | ||
#<math>\forall ~ s_j \in S</math> | #<math>\forall ~ s_j \in S</math> | ||
Строка 44: | Строка 43: | ||
########Если <math>\rho_k \in </math> <tt>[[Распространение радиоволн ВЧ/Источник|s()]].Область регистрации луча (<math>\alpha_{\theta},\alpha_{\varphi},\frac{\Delta_{\theta} (\zeta_{\theta})}{2^i},\frac{\Delta_{\varphi} (\zeta_{\varphi})}{2^i}, t'</math>)</tt> | ########Если <math>\rho_k \in </math> <tt>[[Распространение радиоволн ВЧ/Источник|s()]].Область регистрации луча (<math>\alpha_{\theta},\alpha_{\varphi},\frac{\Delta_{\theta} (\zeta_{\theta})}{2^i},\frac{\Delta_{\varphi} (\zeta_{\varphi})}{2^i}, t'</math>)</tt> | ||
#########<tt><math>\rho</math>.Зарегистрировать([[Распространение радиоволн ВЧ/Источник|s()]].Напряженность(<math>\omega_n,\alpha_{\theta},\alpha_{\varphi}</math>,Расстояние([[Распространение радиоволн ВЧ/Источник|s()]].[[Распространение радиоволн ВЧ/Антенна|Антенна()]].Позиция(), <math>\rho</math>.Позиция()), [[Распространение радиоволн ВЧ/Геометрическая модель|G()]].[[Распространение радиоволн ВЧ/Среда распространения|Среда распространения()]]))</tt> | #########<tt><math>\rho</math>.Зарегистрировать([[Распространение радиоволн ВЧ/Источник|s()]].Напряженность(<math>\omega_n,\alpha_{\theta},\alpha_{\varphi}</math>,Расстояние([[Распространение радиоволн ВЧ/Источник|s()]].[[Распространение радиоволн ВЧ/Антенна|Антенна()]].Позиция(), <math>\rho</math>.Позиция()), [[Распространение радиоволн ВЧ/Геометрическая модель|G()]].[[Распространение радиоволн ВЧ/Среда распространения|Среда распространения()]]))</tt> | ||
#######Если <tt>[[Распространение радиоволн ВЧ/Источник|s()]].Напряженность(<math>\omega_n,\alpha_{\theta},\alpha_{\varphi}</math>,Расстояние([[Распространение радиоволн ВЧ/Источник|s()]].[[Распространение радиоволн ВЧ/Антенна|Антенна()]].Позиция(), Луч([[Распространение радиоволн ВЧ/Источник|s()]].[[Распространение радиоволн ВЧ/Антенна|Антенна()]].Позиция(), <math>\alpha_{\theta},\alpha_{\varphi}</math>) <math> \cap ~t'</math>), [[Распространение радиоволн ВЧ/Геометрическая модель|G()]].[[Распространение радиоволн ВЧ/Среда распространения|Среда распространения()]] | #######Если <tt>[[Распространение радиоволн ВЧ/Источник|s()]].Напряженность(<math>\omega_n,\alpha_{\theta},\alpha_{\varphi}</math>,Расстояние([[Распространение радиоволн ВЧ/Источник|s()]].[[Распространение радиоволн ВЧ/Антенна|Антенна()]].Позиция(), Луч([[Распространение радиоволн ВЧ/Источник|s()]].[[Распространение радиоволн ВЧ/Антенна|Антенна()]].Позиция(), <math>\alpha_{\theta},\alpha_{\varphi}</math>) <math> \cap ~t'</math>), [[Распространение радиоволн ВЧ/Геометрическая модель|G()]].[[Распространение радиоволн ВЧ/Среда распространения|Среда распространения()]])</tt> <math>>E_{end}</math> | ||
########<math>s' \leftarrow</math> <tt>[[Распространение радиоволн ВЧ/Вторичный источник при рейтрейсинге|s_II()]].Создать([[Распространение радиоволн ВЧ/Источник|s()]].Напряженность(<math>\omega_n,\alpha_{\theta},\alpha_{\varphi}</math>,Расстояние([[Распространение радиоволн ВЧ/Источник|s()]].[[Распространение радиоволн ВЧ/Антенна|Антенна()]].Позиция(), Луч([[Распространение радиоволн ВЧ/Источник|s()]].[[Распространение радиоволн ВЧ/Антенна|Антенна()]].Позиция(), <math>\alpha_{\theta},\alpha_{\varphi}</math>) <math> \cap ~t'</math>), [[Распространение радиоволн ВЧ/Геометрическая модель|G()]].[[Распространение радиоволн ВЧ/Среда распространения|Среда распространения()]]), <math>\alpha_{\theta},\alpha_{\varphi}</math>, [[Распространение радиоволн ВЧ/Источник|s()]].[[Распространение радиоволн ВЧ/Антенна|Антенна()]].Позиция(), <math>t'</math>)</tt> | |||
########<math>S \leftarrow s'</math> | |||
==Основной цикл программы | Вариант 2== | ==Основной цикл программы | Вариант 2== |
Версия 22:39, 31 октября 2016
Алгоритм
Идея последовательного приближения
Идея заключается в последовательном удвоении числа элементарных модельных экспериментов. Это продолжится до тех пор, пока результат текущего моделирования не приблизится к результату моделирования на предыдущей итерации:
, где
- - параметр моделирования, задаваемый пользователем.
Однако сравнение соседних итераций не дает достаточного условия на достижение заданной точности (основная причина этого - излучение по направлениям). Поэтому правильнее будет сравнивать итерации через одну, две и т.д.:
, где
- также будет задаваться пользователем.
- здесь - это параметр цикла, стоящего над циклами основной программы, .
При равномерном увеличении числа направлений излучения от первичного источника в два раза путем деления на 2 соответствующего шага по углу в процессе увеличения
, только каждое второе направление будет новым, т.е. не учитанным на предыдущих итерациях. Другая половина будет повторять эксперименты, уже выполненные ранее. Поэтому в цикл основной программы введено дополнительное условие для учета этих повторений.Шаги
по азимуту и по зениту источника являются функциями от направления либо постоянными.Инициализация геометрической модели
Перерасчет высот с учетом кривизны земли и рефракции радиоволн в тропосфере.
Входной параметр
пересчитывается в соответствии с формулой:, где
- - радиус Земли (км),
- - изменение коэффициента преломления с высотой.
- эквивалентный радиус Земли, где
- - расстояние до точки с высотой .
Основной цикл программы | Вариант 1
- набор источников()
- Если
- Если
- G().Набор полигональных объектов().Набор поверхностей()
- Если s().Напряженность( ,Расстояние(s().Антенна().Позиция(), Луч(s().Антенна().Позиция(), ) ), G().Среда распространения())
: нечет. &
- Если
: нечет. &
- Если