Software Sustainability in Cyclus

Kathryn (Katy) Huff

image generated by Anthony Scopatz, Paul P.H.  Wilson, and Katy Huff

A Nuclear Fuel Cycle Simulation Framework

Cyclus Infrastructure

  • C++
  • Python
  • xml
  • CMake
  • conda
  • GoogleTest
  • nose
  • hdf5
  • sqlite
  • boost
  • Coin-Cbc

Agent Based Systems Analysis

Hundreds of discrete facilities mine, mill, convert, fabricate, transmute, recycle, and store nuclear material.

from Paul Lisowski

Agent Based Systems Analysis

A facility might create material.


Agent Based Systems Analysis

It might request material.


Agent Based Systems Analysis

It might do both.


Agent Based Systems Analysis

Even simple fuel cycles have many independent agents.

material flow

Lessons Learned: Openness


Communication Drives Collaboration

Workflows must be Motivated

Lessons Learned: Flexibility

Export control is serious.

Export Control is a big deal in nuclear

'Modified' Open Source

Dynamic library loading and modular encapsulation allow for security of proprietary or sensitive data.

Lessons Learned: Developers Disappear

katy graduating

But, Leaders Appear


Leadership transition is key. Be friends.




  • Cyclus Development Team!


Katy Huff
Creative Commons License
Software Sustainability in Cyclus by Kathryn Huff is licensed under a Creative Commons Attribution 4.0 International License.
Based on a work at