Skip to content

Dev Roadmap #41

@ZoeRichter

Description

@ZoeRichter

This issue is a parent issue to organize the next development steps. Items are generally listed in the order they need to be completed in. Complex items have associated issues.

Improve current code:

Flow data:

  • create test data by taking subset of larger dataset.
  • convert to .csv
  • velocity profiler
    • Radial/axial binned average velocities (colormap)
    • mass flow average velocity (radially dependent, for low fidelity models)
    • can also flag pebbles with a high kinetic energy in this phase for possible avalanches (print timestep/uid to csv, but stop there)
  • Single pass core transit pool
    • save these to csv as well, separate from the csv coord data used to determine these
    • can also generate streamlines at this phase (include optional flag to generate or not)
  • transit numbers by radial zone
  • residence time by radial zone

Input file additional variables:

  • fresh fuel enrichment
  • TRISO geometry/comp
    • TRISO pf in pebbles, fueled radius
    • optional: allow a 'simple' non-depleting pebble option (collapse the TRISO layers)
  • non-fuel material properties
  • burnup steps
  • assay delay time

Pebble management:

  • add attributes needed to pebble class
    • depleting/non-depleting flag
      • if non-depleting, will need something to point to the correct composition matrix object
    • history
    • radial zone in pass
    • because you convert to (r, z) so often, add r as an additional coord
    • revisit this item during openmc material autogen if you need to add any additional attributes beyond mat_id to link depleting pebbles to their mat.
    • RGB color (optional, only do this if you're certain storing the colors here is better than assigning colors when plotting) (definitely not needed for paraview - only useful (maybe) for generating OpenMC color dicts) (idea: look into function to auto-blend region colors and then darken according to pass (with RGB calculated with math))
  • pebble composition matrices code infrastructure
    • create Ghastly class, which needs:
      • history code attribute
      • current pass attribute
      • composition units attribute
      • attribute containing or pointing to the isotopic composition map
        • bin in (r, z). each bin contains a composition dict (or such) in the form of {isotope : concentration}
      • method to return the correct composition vector when given a pebble coordinate (to pass to OpenMC autogen)
        • method to interpolate using nearest neighbor bins
      • method to update composition matrix, given data from an improved depletion sim

OpenMC autogen:

  • fuel material autogen (see BCC model for ref):
    • depleting
      • generate fresh fuel given enrichment, after that its tracking the ind. mats as they burn
    • non-depleting
      • see Ghastly composition map class discussion above for how the comp. is stored
      • add function to randomly assign passes/histories (both to bed and to pebbles that have recirculated)
  • pebble geometry autogen (see BCC/test models for ref)
    • if the pebble class doesn't store color data, will need to gen. color dict here
    • generate TRISOs in pebs
      • depleting pebs might use different TRISO arrangements, but non-depleting will definitely just use the same one
      • see input file section, add optional flag for simplifying non-depleting TRISOs to one outer layer
  • simple vessel autogen
    • basic reflector
      • maybe allow grey skirt iff it is very simple (<30 minutes to add)
    • evenly spaced coolant channels
    • simple RPV (basically a single shell around everything)
    • void outside
  • assay period model
    • CRP packed cylinder w/ relatively lower packing fraction (~35%?), decay for X days in void

Low fidelity models:

  • CRP model
    • figure out JT-algorithm in cone (OpenMC dev?) OR alternative
    • automatic pebble geometry and material gen should otherwise use same functions
    • move pebbles function
  • lattice model
    • convert velocity profile into lattice units
    • autogen lattice positions and pebble unit cell definitions
    • move pebbles functionw

Sub-issues

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions