Содержание материала

Программы-модули низкого уровня достаточно просты, отсутствуют какие-либо особые требования к их программированию, кроме естественного требования экономичности по требуемой памяти и счетному времени. Поэтому нет необходимости останавливаться на алгоритмах этих программ. Приведем лишь несколько схем алгоритма, иллюстрирующих использование классификационных признаков.
На рис. 4.5 представлена схема алгоритма программы ALFM расчета коэффициентов теплообмена со стороны жидкого металла. Алгоритм прост — по значению идентификатора вида течения КВТ выбирается нужная расчетная формула. Аналогичным образом работает подпрограмма DPM.
На рис. 4.6 представлена схема алгоритма расчета свойств конструкционных материалов. Управляющим параметром служит идентификатор типа стали из набора, предусмотренного в массиве коэффициентов параболической аппроксимации табличных данных.
Рассмотрим более подробно алгоритм решения системы уравнений теплогидравлики. Частично этот вопрос уже обсуждался в §2.1, теперь проследим за методом решения по схеме алгоритма программы DCSG, представленной на рис. 4.7. Напомним, что назначение этой программы состоит в решении системы уравнений теплогидравлики при заданных параметрах теплоносителей на входе и выходе и заданной геометрии парогенератора.


Рис. 4.5. Схема алгоритма программы ALFM

Работа программы начинается с присвоения начальных значений переменным, изменяющимся в процессе счета при движении от узла к узлу или в итерационном процессе. В блоке 1, в частности, текущему значению температуры натрия присваивается ее значение на выходе, текущему значению энтальпии воды/пара — ее значение на входе, текущему значению давления — его значение на входе. Далее, в блоках 2 и 3 определяются свойства воды/пара на линии насыщения, паросодержание и температура воды/пара. В зависимости от конкретного значения паросодержания и значения вспомогательной переменной ККР, проверяемых в блоках 4 и 5, осуществляется расчет условий перехода к ухудшенному теплообмену (блок 6). Далее в блоках 7, 10 определяются теплофизические свойства греющего теплоносителя, коэффициент теплообмена со стороны греющего теплоносителя, свойства и термическое сопротивление материала теплопередающих труб, теплофизические свойства и коэффициент теплообмена по пароводяному тракту. Полученные значения коэффициентов теплообмена дают возможность вычислить общий коэффициент теплопередачи и плотность теплового потока, а также значения температуры на поверхностях теплопередающих труб (блок 11). Поскольку и термическое сопротивление теплопередающих труб, и коэффициент теплоотдачи со стороны воды/пара зависят от плотности теплового потока, организован итерационный цикл по тепловому потоку, обеспечивающий взаимное соответствие всех расчетов в пределах этого цикла — блоки 9—10—11—12—13—9.


Рис. 4.6. Схема алгоритма программы СВСТ

После достижения заданной точности сходимости по тепловому потоку проверяется (блок 14) необходимость контроля за условиями перехода к ухудшенному теплообмену. Если на текущий момент переход к ухудшенному теплообмену еще не происходил (ККР = 0), то осуществляется проверка на кризис (блок 15), изменение значения контрольной переменной (ключа) ККР, если в данном сечении имеет место выполнение условий перехода, и пересчет коэффициента теплоотдачи со стороны пароводяного потока в соответствии со сменой режима теплосъема. В дальнейшем значение переменной ККР = 1 исключает из расчетов все, что связано с определением кризисных условий. В блоке 18 осуществляется расчет координаты, соответствующей текущему значению температуры греющего теплоносителя, а в блоке 19 расчет перепада давления на счетном шаге и текущего значения давления. На этом заканчивается расчет текущего шага. Если этот шаг счета не является последним, а это проверяется в блоке 20, то происходит сдвиг на шаг по температуре греющего теплоносителя, определение нового значения энтальпии пароводяного потока (блоки 21—23), и расчет повторяется начиная с блока 2 до тех пор, пока блок 20 не выведет программу на окончание счета. Подчеркнем, что окончание работы происходит по двум условиям: либо по превышению температуры на очередном шаге заданной температуры входа, либо при превышении на очередном шаге заданной длины теплопередающих труб. Это понадобится нам для понимания алгоритма поверочного расчета, рассматриваемого ниже.

Рис. 4.7 Схема алгоритма программы DCSG решения системы уравнений теплогидравлики


Рассмотренная схема алгоритма содержит минимально необходимое количество логических переходов. В ней опущен ряд вспомогательных логических условий, обеспечивающих удобство эксплуатации модуля. В частности, не показаны логические переходы, позволяющие по значению ключа КР производить расчет либо с учетом перепада давления по пароводяному тракту, либо при постоянном давлении. Для исключения прерывания счета по запрещенным операциям целесообразно ввести проверку значений параметров на «физичность», предусмотреть автоматический выход из программы, например, при отрицательной разности температур греющего и нагреваемого теплоносителей. Для обеспечения сходимости алгоритма при параметрах, соответствующих работе с балластной зоной (часть поверхности с практически нулевым температурным напором), эффективным средством является уменьшение шага счета с уменьшением температурного напора.
В более сложных программах, многократно использующих модуль DCSG, удобно иметь возможность управлять выдачей результатов расчета по DCSG. Для этого в подпрограмме-модуле DCSG целесообразно использовать логический переключатель вывода результатов счета на внешний носитель или отказа от такого вывода.
Введение всех этих дополнений довольно существенно усложняет логическую структуру программы-модуля. Но оно с лихвой окупается при эксплуатации модуля в составе целевых программ разного назначения, для которых модуль DCSG является основным элементом.
Рассмотрим, как на базе программы-модуля DCSG строится программа прямого (конструкторского) и обратного (поверочного) теплогидравлического расчета ПГ (рис. 4.8). Вначале, как обычно, вводятся исходные данные по геометрии парогенератора и его теплогидравлическим параметрам. Если это конструкторский расчет, то неизвестная длина теплопередающих трубок задается абсурдной, например 500 м. Это позволяет только по заданной длине определить тип расчета. Если она разумна, скажем, менее 200 м, то расчет поверочный, если абсурдна (более 200 м), то расчет конструкторский. Затем вводятся параметры ПГ, при этом если расчет конструкторский, то обязателен ввод всех параметров, кроме одного, который может быть определен из теплового баланса. Если расчет поверочный, то задаются значения параметров на входе, выходные должны быть определены в результате расчета. Поэтому в исходных данных значение выходных параметров несущественно. В блоке 3 по заданному идентификатору типа парогенераторов (KTIP) определяется геометрическая форма элементов парогенераторв и проводятся соответствующие геометрические расчеты и задание вида течения теплоносителя (КВТ).

Рис. 4.8. Схема алгоритма программы конструкторского и (или) поверочного теплогидравлического расчета ПГ

Геометрические расчеты включают определение гидравлических диаметров, угла наклона труб, проходных сечений, кривизны канала (если это змеевиковый ПГ) и т. п. Этот блок удобно оформить в виде отдельной программы-модуля в дополнение к модулю DCSG. Далее сравнением заданной длины теплообменных труб с границей разумного определяется тип расчета — конструкторский или поверочный. Идентификатору типа расчета IPR, который одновременно является ключом управления выводом результатов как в рассматриваемой программе, так и в модуле DCSG, присваивается значение 0 или 1. Если IPR = 1, что соответствует конструкторскому расчету, то происходит вызов модуля DCSG и печать результатов — конструкторский расчет проведен. Если IPR=0, что соответствует поверочному расчету, то производится присвоение начальных значений (нулевого приближения) искомым параметрам, в качестве которых в простейшем случае могут служить входные данные по этим параметрам. Затем вызывается подпрограмма-модуль DCSG. Этот модуль заканчивает работу при выполнении одного из двух условий: L>L0 или Т >Tвх. Если выполнено лишь одно из этих условий, то задачу поверочного расчета нельзя считать решенной. Действительно, если на очередном шаге L0L0, а L<L0, значит, не учтена вся поверхность теплообмена. Если же на очередном шаге L0, а Т<Твх, значит, принятые начальные значения параметров не соответствуют тем, которые нас интересуют (поскольку они соответствуют другой температуре входа). Только в случае одновременного выполнения условий L0 и Т ≥Tвх получаем искомое решение с точностью, которую может обеспечить принятый шаг счета. В этом случае идентификатору IPR присваивается значение единица и расчет повторяется с выводом результатов счета. Если решение не найдено, то определяются невязки по длине или температуре входа. Найденные невязки используются в следующем блоке для уточнения значений искомых параметров. Расчет повторяется до выполнения условий окончания решения: L≥L0 и Т≥Твх .
На алгоритме поверочного расчета стоит остановиться несколько подробнее. Обычно при заданном начальном приближении по неизвестному параметру, например Tвых, вычисляется требуемая длина. Определяется невязка по длине, и подправляется значение искомого параметра. Расчет повторяется до тех пор, пока относительная невязка в расчетной и заданной длине не станет меньше некоторого малого значения. Практика применения такого алгоритма показала, что он имеет существенный недостаток — требует задания точности сходимости по длине, а реальная точность расчета зависит как от принятого шага счета, так и от режимных параметров и заранее не известна. Например, при расчете режимов с достаточно большими температурными напорами чувствительность длины к изменению температуры греющего теплоносителя в пределах шага счета мала и соответственно погрешности счета, связанные с сеточным шумом, незначительны. В этом случае алгоритм работает нормально, обеспечивая сходимость к решению. Но при расчете режимов работы ПГ на малой нагрузке и с малыми температурными напорами чувствительность к сеточному шуму возрастает, погрешность определения длины сильно увеличивается, вплоть до оо при нулевых температурных напорах на выходе. В этом случае алгоритм не срабатывает из-за несоответствия требуемой и достижимой точности счета, итерационный процесс раскачивается вокруг решения, не приходя к нему.
Предлагаемый нами алгоритм лишен этого недостатка. В нем автоматически учтена возможность значительного изменения длины при малом изменении температуры. Счет заканчивается даже в том случае, если расчетная длина на последнем шаге существенно превышает заданное значение, поскольку ясно, что в этом случае решение найдено с точностью до шага счета. Этот алгоритм несколько экономичнее обычного. Он не требует проведения в итерационном процессе полного расчета до температуры входа, если текущее расчетное значение длины превышает заданное значение.
Рассмотрим еще один пример составления программы на основе описанного комплекса программ-модулей: теплогидравлический расчет двухкорпусного парогенератора, имеющего модуль испарителя и модуль пароперегревателя, соединенные последовательно. Соответствующая схема алгоритма представлена на рис. 4.9.

Рис. 4.9. Схема алгоритма программы теплогидравлического расчета двухкорпусного парогенератора

Отличие этой программы от DRCSG заключается лишь в том, что до вызова модуля DCSG организованы две ветви, в которых обезличенным значением геометрических характеристик присваиваются значения, соответствующие либо модулю испарителя, либо модулю пароперегревателя. С помощью дополнительной переменной NK. организовано последовательное прохождение этих двух ветвей до выхода на проверку истинности решений. В остальном алгоритм аналогичен алгоритму программы DRCSG, включая возможность проведения не поверочного, а конструкторского расчета заданием IPG = 1 и условий перехода от одного корпуса к другому (например, по температуре пара на выходе испарителя).
Приведенные примеры дают достаточно полное представление о том, каким образом на базовом пакете строятся программы более высокого уровня. Действуя аналогично, можно построить и другие программы, например программу расчета секции парогенератора, состоящей из одного испарителя и двух пароперегревателей, расчета ПГ с промперегревателем и др.

Специального рассмотрения заслуживает расчет модульно-секционного парогенератора с возможностью неэквивалентности секций по мощности и гидравлическим сопротивлениям.