Дульнев Г.Н., Парфенов В.Г., Сигалов А.В. Применение ЭВМ для решения задач теплообмена (1185899), страница 38
Текст из файла (страница 38)
(6.26) При проведении статистической имитации на ЭВМ моделируется случайный эксперимент, по его результатам находится оценка математического ожидания Е(Л), а затем из формулы (6.26) определяется приближенное значение <рц. Соответствующий алгоритм включает в качестве повторяющегося единичного акта генерацию координат случайной точки на поверхности 5; и значений углов 0 и ф а также проверку для получившегося направления распространения излучения факта попадания луча на поверхность 5,. Эта проверка похожа на проводимый при расчетах ~ц по формулам (6.11), (6.13) анализ наличия затененности у элементарных площадок.
После проведения Ю актов испускания излучения оценка математического ожидания Е рассчитывается по формуле Е (Л) = лЯ/Ф, где а — число актов, закончившихся попаданием на поверхность 5;, а приближенное значением~; тогда равно ~рм яв Е(Л)Я= и!М. (6.26) Моделирование случайных величин. Остановимся подробнее на способах генерации случайных координат точки на поверхности 5; и случайных углов 0 и ф.
В основе этих процедур лежит использование стандартных подпрограмм (или подпрограмм-функций), позволяющих получать последовательности псевдослучайных чисел, равномерно распределенных на интервале (О, 1). Например, в программном обеспечении ЕС ЭВМ имеется подпрограмма КА1(ОБ (161, обращение к которой имеет вид: СА(Л. КАМН3(1Х, Гт', Е), где 1Х вЂ” целое случайное число — входной параметр; [У вЂ” целое случайное число — выходной параметр; Х вЂ” генерируемое подпрограммой вещественное случайное число из интервала [0,1[.
При первом обращении к подпрограмме входному параметру 1Х следует присвоить какое-либо нечетное целое значение. При последующих обращениях входному параметру 1Х следует присваивать значения выходного параметра 1У, полученные при предыдущем обращении. Часто рекомендуется для уменьшения к рреляцин между генерируемыми значениями Х «прокручивать» да~чик несколько раз «вхолостую» перед выбором полученного значения Х в качестве искомого случайного значения.
Отметим, что подпрограммы генерации псевдослучайных последовательностей различны для разных типов ЭВМ (ЕС, СМ ЭВМ, БЭСМ). Это связано с тем, что способы получения псевдослучайных чисел в этих подпрограммах зависят от длины машинного слова (количества двоичных разрядов, отводимых для целых величин). Очевидно, что если требуется получить случайное значение величины д, равномерно распределенной на интервале [а, Ы, то с помощью случайного значения г из интервала[О, 1[ это можно сделать следующим образом: 0=а+(Ь вЂ” а)г. Поэтому значение азимутального угла ф из интервала [О, 2л) определяется по формуле »р = 2лг. (6.27) Сложней обстоит дело с выбором случайного значения полярного угла О, так как его величина должна быть распределена на интервале [О, я/2) с функцией плотности распределения вероятности / (О), пропорциональной з[п 0 соз О, т.
е. [с з[п 0 соз 0 при О ~ 0 ( п/2, [О при 0~ [О, и/2]. Постоянную с найдем из условия нормировки функции плотности распределения вероятности: л/» /(О) д0 ь с(з[п'О)/2[",!'=1, о тогда с = 2. Интегральная функция распределения вероятности Р (О), равная в данном случае вероятности попадания значения полярного угла в интервал [О, О[, имеет вид: в Г(0) =~/(О) б0= з[п О. а 191 Как было отмечено выше, моделирование на ЭВМ значений случайных величин с произвольным распределением производится обычно путем специального пересчета значений псевдослучайных чисел, равномерно распределенных на интервале [О,!!.
В основе этого алгоритма часто лежит следующее положение, которое несложно доказать: если имеется случайная величина 0 с интегральной функцией распределения вероятности г (О), то величина г, связанная с 0 соотношением будет иметь равномерное распределение на интервале [О, 1!. Так как д= г='(г), (6. 291 то отсюда вытекает, что для получения случайного значения 0 можно взять случайное значение г из интервала!0,1! и найти значение д из соотношения (6.29). В данном случае РО) =яп'0 и случайное значение полярного угла определяется по формуле (6.30) О =агсяп) г.
Для выбора случайной точки на поверхности 5;, имеющей сложную форму, можно использовать следующий способ. Поверхность 5; разбивается на М элементарных ячеек одинаковой площади Л5, координаты центров которых могут быть вычислены по некоторому правилу. С помощью случайного числа г из интервала [О, 1! находится целое случайное число л из последовательности 1, 2, ..., по формуле л = [гМ!+ 1. (6.31) Номер я определяет площадку, нз центра которой рассматривается выход луча в направлении, заданном углами ф и О. Программная реализация расчета углового коэффициента. В качестве примера, имеющего чисто учебное значение, рассмотрим программу (рис.
6.8) расчета методом статистической имитации углового коэффициента гр„между двумя бесконечными полосами, расположенными под некоторым углом друг к другу (рис 6 9). В данной задаче рассматривается ход лучей только в одной плоскости хОу, т. е. определяется угловой коэффициент между отрезками 1 и 2. Для упрощения расчетных формул отрезок 1 расположим на осн х между точками хл, ха.
Положение отрезка 2 задается двумя парами координат граничных точек (хс, ус), (хо, уо). Для рас- 192 2 3 4 5 в 7 в 8 19 11 !2 (З 14 !5 «8 !7 (В 18 29 21 22 23 24 25 28 27 28 28 39 31 Зз зз 34 35 38 37 38 38 49 41 43 44 45 48 47 48 48 59 51 52 53 с с с с с с с с с с с с с с с с с с с с с с ПРОГРЫЕА( РАСЧЕТА УГЛОВОГО КОЗНИЦИЕНТА ие!одои стхтистичесной иыитлции вхо)ЕИ(е ДАННИК: х(,хв - НООРЕИ)ь(ты ГРАниц о(тезкА 1 ХС,ХВ,ХС,У — КООРДИНАТЫ ТРА)Н(Ц ОТРЕЗКА 2 и - Число Актов испускхнин излучкния ВЫХОД)5)Е ДАННЫЕ; Р12 — ЦРКВВ(венное знАчение уГлоВОГО козаеициентА у)зт — точное знАчение углового коэааициентл НРАВ (,ХА,ХВ,ХС,ХВ,УС,УО 1 РОНИАТ(ВР(е.з) ЯЕАО 2,И 2 РСЛЫАТ(!5) ов)иянин счетчикА попАЦАний И12 9 НАЧАЛЬНОЕ ЗНАЧКНИК ВХОДНОГО ПАРЫ(Е)РА !Х ЛЛЯ ГЕНЕРАЦИИ СЛУЧАЕНЫХ ЧИСЕЛ 1Х 1887 ЦИКЛ ПО АКТАМ ИСПУСНАНИЯ ИЗЛУЧЕНИЯ 305! !,н ГЕНЕРАЦИЯ СЛУЧАИНОй ТОЧКИ Х ОО 3 Н 1,19 САЬЬ ИАНЭО( !Х,!1,2) 3 1Х!Т Х-ХА«( ХВ-ХА) «Х ОПРЕЛЕЛЕНИЕ ПРЕДЕЛЬНЫХ УГЛОВ «1, Ч2 У! АТАК((ХС-Х)/Тс) У2 АТАК(()Ц)-Х)/УВ) РЕПЕРА(УЯ СЛУЧАЕНОГО УГЛА У Оо 4 К 1,19 СА).Ь НА)П)Ц(!Х,!1,2) 4 )Х 1У Ч АН31Н(2 «2-1,) ПРОВЕРКА УСЛОВИЯ ПОПАДАНИЯ ЛУЧА НА ОТРЕЗОК 2 И НАРЯИВАНИЕ СОДЕРЕИЫОГО СЧЕТЧИКА ПОПАДАНИЕ 1Р(У.ЬТ.Ч() СО ТО 5 1Р(У.СТ.Ч2) СО ТО 5 И12 Н12+1 5 СОНТ1МОЕ РАСЧЕТ ПРИБЛИЛЕННОГО ЗНАЧЕНИЯ Р)2 Р!2=И12 Р!2 У)2/Н РАсчет тОчнОГО ЗнАчения у(зт 512 (ХА-ХВ)»«2+УЗ««2 312 ВН)т(512) 321 (ХС-ХВ)««2+УС»«2 221 ЗОНТ(321) 311=(ХА-ХС) »2+УС«А2 511-ЗОНТ(311) 322=ВОАТ((ХВ-ХВ)»»2«УО »2) Рис.
5.8 Рис. 5.8 Продолжение сматриваемой ситуации петр)дно методом натянутых нитей 1311 полУчить ана 1итическое выРажение ДлЯ сР!е. — — 1)/(х. — хв)е —, .Уо/ 1-1/1 — хв)'+ У'— - Р'(хд — хс) + ус — 1л!хо — хв) + дв 1/2(хв — хд), (6.32! результат расчета, по которому можно сравнить с приближенным значением, найденным путем статистической имитации.
Рассмотрим особенности моделирования углов испускания лучей для задач, решаемых на плоскости. Поток, излучаемый в плоском угле !О, О + с(01, с элементарной площадки д5 равен !301 УО ба =/ .66366. (6.33) Ус В отличие от выражения (6.24) для излучения в пространственном телесном угле с(ьс здесь не рассматривается азимутальный угол отсутствует множитель з!п О, а угол О, отсчитываемый влево и вправо от нормали, изменяется от — и/2 до п)2.
Поэтому случайное начение О следует генерировать в интервале ! — п)2, и/21 с плотнотью вероятности, пропорциональной соз 6: а "с ! Рнс. 6.9 Интегральная функция распределения имеет вид зс(0) ==- ~ — соз 6110= — (а!п 6+1). 1 ! 2 2 (6.34) -л/2 194 54 55 С 56 57 56 56 88 81 82 86 Р12Т 1212е521-3!1-222)/2/(МВ-ЯА) ПЕЧАТЬ РЕЗРЯЬТЛТОВ и Р12Т-Р!2 РИ1ИТ 6,Н,Р12,212Т,З 6 томит! чисяо Антов испаскимя изяРчкния-',16/ л' ПРИБЯИИЕННОЕ ЗНАЧЕНИЕ Р12 ',Р8.4/ л' ТОЧНОЕ ЗНАЧЕНИЕ Р12Т ',Р8.4/ и' ПОГРЕИНОСТЬ РАСЧЕТА ',Р6.4) ЗТОР вп) — со56, ОЕ [ — ас/2, и/21, ! /(О) = 2 О, 0~1 — и/2, и/21. Гогда, исходя из соотногпеиия (6.29), значение 0 рассчитывается на основе выданного датчиком псевдослучайных чисел значения з по формуле (оператор 36): 0 = агсз!и (2г — 1).
(6.35) Значение координаты х случайной точки на отрезке ! вычисляется так (оператор 28): Х = Хл + (Ха Хл) 2. Луч, вышедший из точки (х, О), попадает на отрезок 2, если выбранное значение угла 0 лежит в интервале (0„0,) (см. рис. 6.9). Значения этих предельных углов зависят от положения х и могут быть определены по формулам (операторы 30, 31): О, =агс19 Цхс — х)!ус), 0е =-агс191(хо — х)IУо) Если полученное в результате 1-го акта испускания луча значение 0 попадает в интервал 19,, О,) (операторы 39, 40), то значение счетчика попаданий )Ч 12 увеличивается на единицу (оператор 41), в противном случае — оно не изменяется. После моделирования !ч актов испускания рассчитывается оценка углового коэффициента Е!2 по формуле (6.26) (операторы 44, 45), причем для получения результата в виде действительного числа значение )Ч 12 предварительно переводится из переменной целого типа в переменную действительного типа (оператор 44).