sidoh / reactor_simulator

A simulator API for BigReactors
MIT License
15 stars 13 forks source link

Suggestion: Simulate cyanite buildup #2

Open magerooster opened 9 years ago

magerooster commented 9 years ago

Thanks for your useful tool, but I found one aspect of a reactor not modeled yet:

A reactor will vary between 0 and 999 mb of cyanite in the rods during the course of running. Could it be possible to get an indicator of the low and high output from that cycle?

sidoh commented 9 years ago

hm, interesting.

Is there some correlation between waste produced and fuel consumed? I guess I was operating under the assumption that it was 1:1.

BraynStorm commented 9 years ago

It its 1:1.

sidoh commented 9 years ago

Got it. In that case, waste buildup is the same as fuel consumption, so there's not much value in having that number repeated with a different label, right?

sidoh commented 9 years ago

OK, unless I'm missing something, I think this is the same as fuel consumption, so I'm just gonna close.

Feel free to re-raise if I'm mistaken.

magerooster commented 9 years ago

It's more an issue that your reactor has space for X amount of rod capacity, which is split between fuel and waste. The reactor's output dips slightly in a cyclical fashion as the amount of waste approaches 999, and then resets back to 0. As your simulator works now, it works as if every yellorium fuel rod is entirely full of nothing but yellorium.

This has nothing to do with the actual rate of the fuel consumption and is more akin to control rod insertion mechanics as far as I can tell.

I made a basic 3x3x3 reactor to demonstrate. It holds 4 buckets in the fuel rod. When first starting it up (and giving it a chance to stabilize, I get the following: 865C core temp, 261 RF/t power output, 0.028 mB/t fuel usage.

After it fills up 500mb of cyanite, we're now down to 3.5k yellorium in the rods and the stats change to 770C core temp, 232 RF/t output and 0.025 fuel usage.

See what I mean?

sidoh commented 9 years ago

Got it. Makes sense. I think I misread the original issue. I'll re-open.

In retrospect, this is something I noticed when I was testing with in-game reactors. I guess I didn't bother modeling it for two reasons:

  1. It only makes a noticeable difference for teeny reactors. The effect it has decreases linearly with the volume of the reactor, and is pretty negligible by the time you have a 3x3x3.
  2. I don't see a sensible way to model it without complicating what's displayed. The two ways I see to do it it are:
    1. Show simulation results over multiple cylces.
    2. Add input in the UI to fix a waste volume between 0 and 999. Have the simulator keep that much waste in the rods.

(i) is a fair amount of work, but maybe valuable for an orthogonal reason: the variation in simulation results is something a few people have found confusing. Historical values might be something that help clear this up. Maybe it could be an optional view that the user chooses to expand in the UI.

(ii) seems like it'd add more confusion than it's worth.

What are your thoughts?

shadoxxhd commented 9 years ago

ii seems useful

magerooster commented 9 years ago

The two most useful ranges are probably at 0 cyanite and 999 cyanite. So I'd run the simulation for those two values and produce a "X~Y RF" output value.

sidoh commented 9 years ago

Ah yeah, that's a good point. Range would probably be worthwhile. I probably won't have enough time to get to this in the near future, but I'd definitely welcome a PR if someone is up for it.