ReQt - программа визуализации и анализа результатов расчетов полномасштабных зон реакторов РБМК-1000

 

Д. Зинаков

Всероссийский Научно - исследовательский институт по эксплуатации атомных электростанций (ОАО «ВНИИАЭС»), Москва, Россия.

rbmk@vniiaes.ru

 

 

Оглавление

 

1. Введение  1

2. Техническая реализация  3

2.1. Использованные программные средства  3

2.2. Структура программы ReQt 4

2.3. Дизайн программы   5

2.4. Примеры использования ReQt 8

3. Заключение  15

Список литературы   16

 


 

 Аннотация

 

В статье описывается программное средство, предназначенное для визуального анализа двумерных полей физических величин активных зон реакторов РБМК-1000. Активная зона реактора РБМК-1000, состоит из 1884 каналов, каждый из которых, обладает уникальным набором нейтронно-физических и тепло-гидравлических характеристик, что существенно затрудняет анализ результатов расчетов человеком.

Разработанное программное средство позволяет представить результаты расчетов в единообразном виде цветных картограмм, что существенно облегчает решение задач отладки и верификации расчетных кодов, помогает быстро выявлять проблемные участки полей физических величин.

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

 

 1. Введение

 

Программа ReQt разработана в центре научно-технической поддержки эксплуатации реакторов РБМК-1000 ОАО «ВНИИАЭС».

Основная задача, поставленная перед Центром  -  расчетное сопровождение эксплуатации РБМК-1000, т.е. систематический расчетный контроль параметров ядерной безопасности, расчетный контроль и согласование перегрузок топлива и порядка выхода реакторов в критическое состояние и др. Выполнение этой основной задачи невозможно без решения проблем разработки, верификации,  аттестации и внедрения на АЭС новых расчетных кодов и   постоянного совершенствования существующих программных комплексов.

К  таким комплексам относятся как программы, созданные в самом центре: ТРОЙКА, БОКР, КОРР Е, ОПТИМА, POLARIS[1], ПРИЗМА-М-АНАЛОГ[2]; так и программные средства сторонних разработчиков: например MCU[3]. Кроме того, сотрудники центра постоянно работают с результатами расчетов выполненных специалистами других организаций с использованием собственных программных средств, например SADCO[4].

Все вышеуказанные программы разрабатывали в разное время разные люди под различные задачи, в результате чего сложилась ситуация отсутствия унифицированного подхода в плане представления результатов расчета. Эта проблема была частично решена в рамках комплекса программ «ЭНЕРГИЯ» (включающего все программы, разработанные в центре), в котором используется унифицированное хранилище данных «БД ЭНЕРГИЯ» - база данных этого комплекса. Однако, на данный момент морально и физически устарели как средства визуализации комплекса, так и база данных комплекса; кроме того программные средства сторонних разработчиков в силу различных объективных и субъективных причин  никогда не могли работать с  этой базой данных.

В тоже время нельзя не отметить, что физический анализ результатов при расчете полномасштабных систем без использования средств визуализации крайне затруднителен из-за большого объема обрабатываемой информации. Активная зона реактора РБМК-1000, состоит из 1884 каналов высотой 7 метров, практически, каждый из которых, обладает уникальным набором нейтронно-физических и тепло-гидравлических характеристик. Кроме того, трехмерные программы производят расчет с разбиением активной зоны на слои, чаще всего используется разбиение на 14 слоев по высоте. В целом это составляет 26376 расчетных зон.

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

 

2. Техническая реализация

 

2.1. Использованные программные средства

 

В качестве программной платформы для реализации поставленной задачи был выбран современный язык программирования Python [5]. Python   высокоуровневый язык программирования общего назначения с акцентом на производительность разработчика и читаемость кода.  Немаловажной особенностью языка является его кросс-платформеность - Python портирован и работает почти на всех известных платформах [6]. Кроме того Python интерпретируемый язык программирования.

Сам по себе Python не содержит средств для работы с графическим интерфейсом пользователя, однако существует несколько различных реализаций («привязок») библиотек,  предоставляющих возможность работы с графическим интерфейсом. В данном случае была выбрана реализация PyQt4 [7]. PyQt4 осуществляет привязку к графическому  фреймворку Qt [8].

Qt кросс-платформенный инструментарий разработки программного обеспечения на языке программирования C++. Включает в себя все основные классы, которые могут потребоваться при разработке прикладного программного обеспечения, начиная от элементов графического интерфейса и заканчивая классами для работы с сетью, базами данных и XML [9].

Все вышеуказанные программные средства свободно распространяются и кросc- платформенны.

 

2.2. Структура программы ReQt

 

Программа ReQt состоит из двух частей, собственно основной программы и набора плагинов.

Основная программа предоставляет графический интерфейс пользователю, содержит процедуры для получения картограмм (принятый вид представления двумерных полей различных параметров реакторов) от плагинов, позволяет сохранять/загружать наборы картограмм, полученных от плагинов, проводить основные операции по числовому поканальному сравнению данных в картограммах, рассчитывает основные статистические характеристики данных, отображенных на картограмме; позволяет копировать, сохранять, печатать данные, как в виде цветовых картограмм, так и в виде цифровых данных. Основная часть программы представляет собой исполняемый файл с набором необходимых библиотек.

Плагины, это - простые текстовые файлы, написанные на языке Python в соответствии с определенными правилами. В процессе инициализации программы они считываются и исполняются как обыкновенные скрипты языка Python. Плагины могут быть как очень простыми скриптами, так и полноценными программами, использующими все возможности языка Python (и других языков программирования, через динамически подключаемые библиотеки) с собственным, развитым графическим интерфейсом. Структурная схема программы приведена на рисунке 1.

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

 

 

Рисунок 1 – Структура программы ReQt

          

2.3. Дизайн программы

 

Интерфейс пользователя реализуется в виде единственного окна, занимающего всю площадь экрана монитора, на рисунке 2 приведен вид основного окна программы. В верхней части окна находятся панели инструментов:

Доступные плагины - генерируется автоматически при инициализации программы;

Картограммы, предоставляемые плагином - генерируется автоматически при инициализации плагина;

Операции по сравнению картограмм - позволяет попарно производить операции сравнения числовых значений в каналах активной зоны;

Файловые операции с картограммами – сохранение/загрузка картограмм в едином формате, управление загруженными картограммами.

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

            Основную площадь рабочего окна занимает мнемотабло каналов активной зоны реактора. Как уже отмечалось выше, активная зона реактора РБМК-1000 состоит из 1884 графитовых колон квадратного сечения, высотой 7 метров. В каждой колонне имеется отверстие с трубой (каналом) для установки тепловыделяющих сборок (топливные каналы) или стержней управления и защиты (каналы СУЗ). Мнемотабло повторяет реальную расстановку графитовых блоков в реакторе. На нем цветом отображаются значения физических величин в соответствии с цветовой шкалой, расположенной ниже. При перемещении курсора мыши в центре мнемотабло высвечивается координата канала, над которым находится указатель, и значение параметра в этом канале.

 

 

Рисунок 2 - Основное окно программы

 

Программа имеет встроенную справку (см. рисунок 3). Интересной особенностью справочной системы является ее динамичность, т.е. информация о плагинах, используемых ими модулях и классах генерируется автоматически.

 

 

Рисунок 3 - Окно справки

 

2.4. Примеры использования ReQt

 

            В качестве практического примера использования программы ReQt для визуального анализа приведем пример сравнения поля энерговыделения, рассчитанного по программе ТРОЙКА и MCU (такого рода вопросы возникают, например, при верификации программных средств).  Для этого необходимо считать картограмму мощностей, рассчитанную при помощи ПС ТРОЙКА, на рисунке 4 приведена часть картограммы из протокола расчета.

 

Рисунок 4 – Часть картограммы мощностей из финальной выдачи ПС ТРОЙКА

 

Затем из финальной выдачи программы MCU необходимо получить зарегистрированную скорость генерации нейтронов в каналах активной зоны, часть листинга приведена на рисунке 5. Скорость генерации нейтронов нормируется на тепловую мощность реактора, в результате чего получается поканальное распределение мощностей, зарегистрированных программой MCU. Далее необходимо рассчитать отличие в результатах расчета для каждого канала.

 

 

Рисунок 5 – Часть финальной выдачи MCU с зарегистрированными скоростями генерации нейтронов

 

В рамках программы ReQt считывание данных из файлов реализовано в плагине, а операция поканального сравнения значений в самой программе. Результат обработки данных представлен на рисунке 6. Из рисунка видно, что наблюдается глобальный перекос оценки поля энерговыделения, он вызван тем, что инженерный код ТРОЙКА при расчете производит корректировку на показания датчиков внутриреакторного контроля, а программа MCU такими данными оперировать не может. Для исправления данной ситуации в 2011 году совместно со специалистами НИЦ «Курчатовский институт» были проведены работы, показавшие, что за счет корректировки изотопного состава топлива в пределах неопределенности исходных данных, можно значительно уменьшить различие в оценках полей энерговыделения и существенно приблизить результат расчета MCU к экспериментальным данным. Для анализа корректировок изотопного состава топлива и отклика поля энерговыделения успешно применялась программа ReQt.

 

 

Рисунок 6 – Пример, сравнение полей энерговыделения рассчитанных по программам ТРОЙКА и MCU
(цветом  определена степень отклонения, %)

 

            Другим примером проиллюстрируем применение программы ReQt для отображения получаемых результатов расчета, в частности, для  отображения статистической ошибки при регистрации скорости генерации нейтронов в программе MCU. Оценка ошибки считывается из файла финальной выдачи MCU (см. рисунок 5) плагином и отображается посредством программы ReQt, результат приведен на рисунке 7.

 

 

Рисунок 7 – Поле статистической ошибки при регистрации скорости генерации нейтронов при расчете по программе MCU, %
(Зеленым цветом отмечены каналы без топлива, где генерация отсутствует)

 

Из рисунка хорошо видно, что максимальная ошибка достигается на периферии активной зоны реактора, а минимальная в середине зоны. Такой результат полностью соответствует особенностям алгоритмов метода Монте-Карло. Дело в том, что в тех зонах, где меньше поток нейтронов, происходит меньше событий регистрации, и соответственно, функционалы оцениваются с меньшей точностью. Наглядно убедиться в том, что поток нейтронов на периферии активной зоны меньше чем в центре, также можно при помощи программы ReQt, используя ее для прямого отображения потока нейтронов (см. рисунок 8).

 

 

Рисунок 8 – Поток нейтронов, зарегистрированный программой MCU

 

3. Заключение

 

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

ReQt может быть использовано, в задачах отладки и верификации широкого круга расчетных программ для реакторов РБМК-1000.

Визуальное представление информации позволяет быстро акцентировать внимание пользователя на проблемных участках поля физических величин, что затруднительно при обычном представлении картограмм (рисунок 4), а тем более в тех случаях, когда программное средство вовсе не предполагает наличие таковых (рисунок 5).

Программа ReQt успешно используется в повседневной работе как специалистами ОАО «ВНИИАЭС» так и специалистами НИЦ «Курчатовский институт», занимающимися расчетным сопровождением эксплуатации  реакторов РБМК-1000 и расчетным обоснованием мероприятий по совершенствованию активных зон этих реакторов.

 

Список литературы

 

1. Верификация и обоснование программ: ТРОЙКА, ВЕРСИЯ 7.1; БОКР, ВЕРСИЯ 2.1; КОРР Е, ВЕРСИЯ 2.1; ОПТИМА, ВЕРСИЯ 5.0; POLARIS, ВЕРСИЯ 4.2.1  / авт. ОАО «ВНИИАЭС». - Москва : [б.н.], 2007. - От-Ц360-01/07/.

2. Программа ПРИЗМА-М-АНАЛОГ: Аттестационный паспорт / авт. НТЦ ЯРБ - Москва : [б.н.], 2006. – ПС 214 от 01.03.2006.

Программа MCU-REA/1.1 с библиотекой констант DLC/MCUDAT-2.2: Аттестационный паспорт / авт. НТЦ ЯРБ - Москва : [б.н.], 2007. - ПС 224 от 23.05.2007.

3. Программный комплекс SADCO для расчета физических и динамических характеристик водо-гафитовых реакторов типа РБМК. : Верификационный отчет / авт. НИКИЭТ. - Москва : [б.н.], 1998. - 050-001-5320.

4. Python Programming Language [В Интернете] / авт. Python Software Foundation // python. - http://python.org/.

5. Python [В Интернете] / авт. Python, Wikimedia Foundation, Inc. // Википедия. - http://ru.wikipedia.org/wiki/Python.

6. PyQt intro [В Интернете] / авт. PyQt, Riverbank Computing Limited // Riverbank. - http://www.riverbankcomputing.co.uk/software/pyqt/intro.

7. Домашняя страница Qt [В Интернете] / авт. Qt, Nokia Corporation // Qt. - http://qt.nokia.com/.

8. Qt [В Интернете] / авт. Qt, Wikimedia Foundation, Inc. // Википедия. - http://ru.wikipedia.org/wiki/Qt.

 

 


 

Application of visualization tools for analysis of statistical uncertainties
in Monte Carlo calculations of channel-wise functionals in RBMK-1000

 

I. Ivanov1, 2, N. Shchukin1, S. Bychkkov2, I. Moiseyev2, V. Druzhinin2, U. Shmonin2

1 National Research Nuclear University "MEPhI", Moscow, Russia

2 Joint stock company "All-Russia Research Institute for Nuclear Power Plants Operation" (VNIIAES), Moscow, Russia

ilShai-Hulud@yandex.ru, NVShchukin@mephi, bbk_family@mail.ru.ru

 

 

Abstract

 

The paper considers the problem of qualitative and quantitative evaluation of statistical uncertainties in Monte Carlo calculations of various functionals in reactor of RBMK-1000 type. Analysis of the statistical uncertainties was carried out with application of visualization tools. It was revealed that spatial correlations between neighboring source iterations can produce a random "macro-fluctuation" of neutron distribution in the reactor core. The paper presents numerical evaluations of statistical uncertainties in determination of various neutron functionals and some recommendations on selection of model parameters for precision calculations of RBMK-1000 by Monte Carlo codes.

 

Reference

 

1. Verification and justification of the program: TROIKA, Version 7.1; BOKR, VERSION 2.1, CORR E, VERSION 2.1, OPTIMA, VERSION 5.0; POLARIS, VERSION 4.2.1, author. JSC "VNIIAES." - Moscow: [BN], 2007. - Ot-Ts360-01/07 /.

2. Program PRISMA-M-ANALOG: Certification Passport, author. SEC NRS - Moscow: [BN], 2006. - PS 214 of 01.03.2006.

3. The software package SADCO for calculating physical and dynamical characteristics of water-graphite reactors of the RBMK. : Verification report, author. NIKIET. - Moscow: [BN], 1998. - 050-001-5320.

3. The software package SADCO for calculating physical and dynamical characteristics of water-graphite reactors of the RBMK. : Verification report, author. NIKIET. - Moscow: [BN], 1998. - 050-001-5320.

4. Python Programming Language [В Интернете] / авт. Python Software Foundation python Available at: http://python.org/.

5. Python, Wikimedia Foundation Inc.-Python [In the Internet], Wikipedia Available at: http://ru.wikipedia.org/wiki/Python.

6. PyQt, Riverbank Computing Limited, PyQt intro [In the Internet], Riverbank. Available at: http://www.riverbankcomputing.co.uk/software/pyqt/intro.

7. Qt, Nokia Corporation-Home page of Qt [In the Internet], Qt. Available at: http://qt.nokia.com/.

8. Qt, Wikimedia Foundation, Inc.-Qt [In the Internet]. Available at: http://ru.wikipedia.org/wiki/Qt.