Updating a PWR Simulator in Python
A nuclear reactor is a complicated system that is comprised of many systems and components. In order to fully model a reactor, several approximations and correlations must be used for a real-time simulation. In 1984 as part of a doctoral dissertation at Massachusetts Institute of Technology (MIT), a FORTRAN 77 program was developed to simulate a four-loop, Westinghouse pressurized water reactor (PWR). The program was later called PRISM and extended to include a comprehensive set of features accessible in a DOS-based user interface. This present work seeks to update the original PRISM program for cross platform deployment using the Python language. The goal of this present work is to update and improve a teaching tool for both students and reactor operators. Originally, PRISM was created as part of a PhD project in FORTRAN 77, but the code no longer works readily on modern operating systems. Python was chosen to rewrite the program because of the ease of use of the Python modules including Kivy as well as the portability of the program to various operating systems. This project aims to develop desktop and mobile versions of the software, allowing the user flexibility in choice of platform. This simulator is scheduled to be deployed in time for a live demonstration at the 2016 Annual ANS meeting. The project aims to produce a reactor simulator that will showcase the dynamics of a PWR system in real-time under various conditions. Some potential scenarios include startup conditions, scram operations, or failure conditions such as a break in a coolant leg. The user will be able to induce various failure scenarios and the program will simulate how the reactor will behave. The simulation will include a suite of monitoring functions that will allow automatic systems to attempt to adapt to the changing conditions, e.g., control rod movement. This program will provide an educational resource for anyone learning about nuclear reactor kinetics or dynamics of a reactor system. (authors)