Skip to content

Instantly share code, notes, and snippets.

@katyhuff
Forked from jbae11/issues
Last active April 26, 2017 15:25
Show Gist options
  • Save katyhuff/698b2e9bd627ce3484ffd99814e1a1a3 to your computer and use it in GitHub Desktop.
Save katyhuff/698b2e9bd627ce3484ffd99814e1a1a3 to your computer and use it in GitHub Desktop.
# cycamore::reactor should have a fungibility factor
### Current:
`cycamore::reactor` will not accept material output from `cycamore::Fuelfab` (mox) because the `cycamore::reactor`
judges material acceptance depending on recipe as well as commodity name. The `cycamore::Fuelfab`
does not create output according to a recipe, but mixes input fissile material streams to fulfil
neutronics properties.
An example input file which fails to move matrial from FuelFab to the reactor can be found here: [simple_reprocess.xml](https://gist.github.com/3e8e2cb882597c040b93fe66de4261ca.git).
### Suggested Long Term Solution:
Adding a fungibility (error) factor as an optional configuration in the `cycamore::reactor`
archetype will allow the `cycamore::reactor` to accept mox from fuelfab, and use it,
if the 'mox' out of the `cycamore::Fuelfab` is within the fungibility factor of the mox recipe in the reactor.
This is, of course, in case the user really wants to use `cycamore::Reactor`,
and not `Bright-Lite` or `Cyborg`.
### Current Workaround:
For a single burnup simulation only (output recipe is the same for all reactors),
it is possible to use the `cycamore::Mixer` to manually fit the fissile stream
to satisfy the mox recipe. eg) [simple_reprocess_mixer.xml](https://gist.github.com/3e8e2cb882597c040b93fe66de4261ca.git)'
This will not succeed if the separations facility produces separated streams which vary in time (isotopically).
# cycamore::Mixer should request 'streams' proportionately
### Current
The `cycamore::Mixer` archetype does not have a term for how much
# cycamore::Reactor should have decommissioned reactors in the agentstate_cycamore_reactorinfo table
### Current:
The table `agentstate_cycamore_reactorinfo` does not have
decommissioned reactors (reactors which have exited in the simulation).
This complicates analytics since metrics such as the `power_cap` column are only accessible
in the `agentstate_cycamore_reactorinfo` table.
A discussion of this concern can be found in this issue: [Europe Case Study](https://github.com/arfc/transition-scenarios/issues/25)
### Demonstration of Problem:
The following query on the cyclus.sqlite database outputs blank, in any simulation with `cycamore::DeployInst`:
~~~~
SELECT power_cap, entertime
FROM agentexit INNER JOIN
agentstate_cycamore_reactorinfo
ON agententry.agnetid = agentstate_cycamore_reactorinfo.agentid
~~~~
I also tried using other tables, but it seems that the 'agentstate_cycamore_reactorinfo`
is the only table with the column `power_cap`.
If this were fixed, it would be easier to display the capacity fluctuation
with time if there are reactor agents with more than one unique capacity.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment