- •Численное интегрирование
- •Введение
- •Правило трапеций
- •Ошибка ограничения для метода трапеций
- •Ошибки округления при использовании метода трапеций
- •Экстраполяционный переход к пределу
- •Правило симпсона
- •Метод гаусса
- •Численные примеры и сравнение методов
- •Практический пример 8: светимость электрической лампочки
- •Упражнения
Практический пример 8: светимость электрической лампочки
В этом практическом примере будут использованы описанные методы численного интегрирования, а также проиллюстрированы некоторые полезные приемы программирования.
Абсолютно черное тело (идеальный излучатель) излучает энергию пропорционально четвертой степени абсолютной температуры. Этот процесс описывается уравнением Стефана — Больцмана
где
Е—мощность излучения вт/см2,
Т — температура в градусах Кельвина. Нас интересует та часть общей энергии, которая заключена в видимом спектре частот. Здесь мы предположим, что видимый спектр соответствует длинам волн от 4*10-5 до 7*10-5 см. Эту часть энергии можно найти, интегрируя между вышеуказанными пределами уравнение Планка
где х — длина волны в см.
Е и Т означают то же, что и в предыдущей формуле.
Светимостью мы назовем отношение энергии, заключенной в видимом спектре, к общей энергии излучения. Если умножить это отношение на 100, чтобы получить окончательный результат в процентах и перемножить коэффициенты, то задача сведется к вычислению интеграла
Необходимо написать программу, с помощью которой можно было бы вычислить EFF для некоторой последовательности температур, начиная с начальной температуры TEMPI до конечной ТЕМР2 с шагом TMPINC. С перфокарт необходимо также считывать границы видимого спектра A и B, чтобы эти величины тоже можно было при желании варьировать. Число отрезков разбиения при интегрировании задается с помощью целой переменной N, значение которой также следует прочитать с перфокарты. Ниже мы вернемся к вопросу о том, как велико должно быть N для достижения достаточной точности.
Блок-схема программы изображена на рис. 6. Работа программы начинается с ввода шести исходных значений, после чего производятся два действия, которые в дальнейшем не повторяются: вычисляется H - интервал разбиения, а переменной Т присваивается исходное значение ТЕМП1. После этого начинается собственно интегрирование. В программе предусмотрено вычисление двух сумм при интегрировании. Первая из них, обозначаемая SUM4, представляет собой сумму тех ординат, перед которыми в формуле Симпсона стоит коэффициент 4; вторая, обозначаемая SUM2, является суммой ординате коэффициентом 2. Поскольку по ходу программы потребуется вычислять значение подынтегральной функции в первой внутренней точке X + Н (это значение будет прибавлено к SUM4) и во второй внутренней точке (это значение будет прибавлено к SUM2), то переменной X присваивается соответствующее начальное значение.
Теперь мы сталкиваемся с некоторой трудностью. Для вычисления сумм необходимо пройти все внутренние значения X и затем остановиться. Если определять окончание цикла, сравнивая X и В — Н, т. е. проверять, находится ли X внутри интервала интегрирования, то возникают два неприятных обстоятельства. Во-первых, в формуле Симпсона количество ординат с коэффициентом 4 на единицу больше, нежели с коэффициентом 2. Поэтому нам придется остановиться, не доходя до конца интервала интегрирования, и прибавить к сумме значение ординаты в последней внутренней точке уже после окончания цикла. Во-вторых, если присвоить X исходное значение A + H и многократно прибавлять по 2Н, то ошибки округления будут накапливаться и в общем случае нам не удастся получить точное равенство X и B — 3Н.
Одно из возможных решений заключается в подсчете количества пройденных внутренних точек с помощью целой переменной I. Перед началом цикла интегрирования переменной I присваивается значение 1. (Легко определить значение I, при достижении которого следует выйти из цикла.) Таким образом, мы вычисляем подынтегральную функцию для двух очередных внутренних точек, прибавляем эти значения к соответствующим суммам и проверяем, не пора ли окончить цикл. Если нет, то мы увеличиваем
Рис. 6. Блок-схема программы для вычисления светимости. Интегрирование производится по формуле Симпсона (практический пример 8).
I и X и повторяем вычисления для следующей пары внутренних точек. Если цикл окончился, то необходимо перейти к вычислению EFF. В момент окончания цикла значение переменной SUM 4 равно сумме всех значений ординат, которые необходимо умножить на 4, за исключением ординаты в точке В — Н, которая должна быть вычислена дополнительно. Значение переменной SUM 2 равно сумме всех значений ординат, которые необходимо умножить на 2. Кроме того, остается добавить значения ординат в точках А и В. Таким образом, вычисление величины EFF производится с помощью длинного арифметического оператора, где вычисляются ординаты для А, В и В — Н, производятся умножения на 4 и на 2, а также на величину Н/3 и на 64.77/Т4.
После печатания результатов Т увеличивается на величину TEMPING и сравнивается с TEMP 2. Если новое значение не превосходит TEMP 2, т. е. если вычисления произведены еще не для всех температур, то мы снова переходим к вычислению интеграла. Если же светимость уже вычислена для наивысшей из заданных температур, то вычисления нужно прекратить.
Сама программа приведена на рис. 7. Предоставляем читателям самим внимательно прочесть ее, чтобы убедиться, что она в самом деле производит вычисления, графически изображенные на блок-схеме.
Рис. 6.7. Программа для вычисления светимости. Интегрирование производится по формуле Симпсона (практический пример 8).
Ошибку ограничения можно было бы оценить по ее верхней границе (см. разд. 6), но практически это вычисление требует гораздо больше труда, чем стоит затрачивать в данном случае. Во-первых, нужно было бы найти четвертую производную от
что само по себе является довольно трудоемкой задачей, хотя и вполне осуществимо. 3aтем нужно было бы каким-нибудь образом определить, где эта четвертая производная имеет максимум.
Гораздо удобнее воспользоваться помощью самой ЭЦВМ. Аналогично (18) в случае правила трапеций, следующая формула описывает экстраполяционный переход к пределу для формулы Симпсона
Это означает, что если, например, вычислить интеграл сначала при N = 10, а затем при N = 20, то можно оценить истинное значение интеграла. Кроме того, из величины разности между двумя значениями интеграла можно решить, каково должно быть N для достижения приемлемой точности результата.
Такие вычисления были проделаны по этой программе для Т = 3500° К. При 10 отрезках, вычисленное значение светимости было равно 14.512723%, а при 20 отрезках — 14.512664%. Разница двух значений настолько мала, что мы немедленно прекращаем дальнейшую погоню за точностью.
Рис. 6.8. Зависимость светимости от температуры (°К) для черного тела (практический пример 8).
Наконец, хотя это уже и не имеет прямого отношения к численному анализу, интересно построить график зависимости светимости от температуры, как показано на рис. 6.8. Из графика следует, что видимая часть общей энергии пренебрежимо мала при температурах, меньших 2000° C, что при температуре плавления вольфрама (3600° К) только около 15% общей энергии излучения находится в видимой области спектра и что кривая имеет широкий максимум около 7000° К. Соображения этого рода определяют верхний предел коэффициента полезного действия осветительных ламп накаливания. Интересно было бы также сделать некоторые предположения, относящиеся, например, к стоимости электроэнергии, времени жизни нити накаливания в зависимости от температуры и стоимости лампочки, и вычислить температуру, при которой «полная стоимость» света, включая электроэнергию и лампочку, была бы минимальной.
