IC2 Experimental Reactor Planner

  • A bug was posted requesting a way to turn off automatically refreshing the simulation. Now I'm having trouble finding where that was even required. Would anybody object to me simply making the simulation always require a manual start? (and the "Refresh Simulation" button would become simply "Simulate").

    • Official Post

    I don't mind that.
    Also, you might want to change the simulation colors/ do something else to represent such. The yellow background of a component makes it kinda hard to distinguish some components (component heat exchanger for example).

  • Any suggestions for alternate colors or techniques for representing components that need cooldown time, don't cooldown, or break before the end of the simulation? (and are there any special cases I missed?)

    • Official Post

    Ehm... a small icon on the top right corner of the component?
    When you mouse over it, it would show better information.


    A small red :Energy Crystal: symbol that when you mouse over it would say "Component melts X seconds after the start of the reactor cycle".
    A small yellow :Gold Dust: symbol that when you mouse over it would say "Component uses X% of its total cooling capacity"
    A small orange :Bronze Dust: symbol that when you mouse over it would say "Component takes X seconds to cool down after a reactor cycle" [That is what the orange BG represents, right?]
    Those symbols are placeholders, use something else.


    You may also add a second type of simulation (When components are prone to melt or when components would not be able to maintain the reactor cooled) that would show the maximum time the reactor would be able to stay active without any component melting, before a cooldown time of X seconds were needed.
    More things would have to be shown:
    Total time needed to run said reactor one entire cycle (includes the cooldown time that the reactor is inactive).
    Average EU/t (includes the cooldown time that the reactor is inactive)
    Average efficiency (includes the time that the reactor is inactive)
    and whatever more is influenced by the additional time.


    Also check if the reactor can run more than one cycle without having components melted (how many cycles can it run constantly).


    Edit:
    Another lovely thing would be a copy code to clipboard button. Dat long code doesnt help much when it comes to copying it.
    A successful MOX fluid reactor yay: 0A140A0A160A0A140A0A140A1423140A140A0A140A1405140A140A0A140A1405140A140A0A140A1423140A140A0A140A0A160A0A140A

  • I might have diverged a bit from how the old planner worked as far as the backgrounds, but in mine, red is for a component that breaks during the reactor cycle (I'm not sure neutron reflectors count as having "melted"), yellow is for a component that needs some cooldown time, and orange is for a component that doesn't cool down completely (which could be a coolant cell, a condensator, or even an exchanger)


    Also, to do what you suggest, I think I'll need to overhaul my planner to have three simulation types (with a button for each):
    1. Single cycle (like it does now by default: keep going until all fuel rods are spent, and the heat levels of all components have stopped decreasing (checking for no more changes to heat didn't work because of the quirks of exchangers))
    2. Pulsed cycle (with durations for the on pulse and off pulse, and maybe Nuclear Control conditions - I haven't actually used that mod before, so I will have to look into it more to find out what conditions it can set up; I know it can toggle a redstone signal based on reactor temperature, but I wouldn't be surprised if there's more to it than that)
    3. Continuous automation run (with depleted fuel rods, and optionally other components, replaced as needed, with a time limit (e.g. 2 million reactor ticks) to make sure it can eventually stop the simulation)


    As far as copying the code to the clipboard, I figured that most systems would have a keyboard shortcut for "select all" and "copy", but just in case my planner can be run on a tablet computer, a copy to clipboard button might actually be a good idea.

  • I've put up v1.4.2, which makes the simulation only run when the button is clicked, rather than every time a component changes, accepts codes from Talonius's planner (and gives a warning if that code includes obsolete components), and has buttons for copying/pasting the code.


    Ehm... a small icon on the top right corner of the component?
    When you mouse over it, it would show better information.


    A small red :Energy Crystal: symbol that when you mouse over it would say "Component melts X seconds after the start of the reactor cycle".
    A small yellow :Gold Dust: symbol that when you mouse over it would say "Component uses X% of its total cooling capacity"
    A small orange :Bronze Dust: symbol that when you mouse over it would say "Component takes X seconds to cool down after a reactor cycle" [That is what the orange BG represents, right?]
    Those symbols are placeholders, use something else.


    Instead of colored symbols, what about a small "i" button up and to the right from the component button in the reactor grid that activates a tab in the area below to show information about the component (instead of trying to fit extra details into the tooltip) and what happened to it in the most recent simulation? It would be inside a border to make it clear which component it is associated with, though I am open to suggestions for what the border should look like.

  • Also, to do what you suggest, I think I'll need to overhaul my planner to have three simulation types (with a button for each):
    1. Single cycle (like it does now by default: keep going until all fuel rods are spent, and the heat levels of all components have stopped decreasing (checking for no more changes to heat didn't work because of the quirks of exchangers))
    2. Pulsed cycle (with durations for the on pulse and off pulse, and maybe Nuclear Control conditions - I haven't actually used that mod before, so I will have to look into it more to find out what conditions it can set up; I know it can toggle a redstone signal based on reactor temperature, but I wouldn't be surprised if there's more to it than that)
    3. Continuous automation run (with depleted fuel rods, and optionally other components, replaced as needed, with a time limit (e.g. 2 million reactor ticks) to make sure it can eventually stop the simulation)


    The new simulation types are now available in v2.0.


    Also, the status colors now appear in bands above each component, and there are small "i" buttons at the top right of each grid position to get more information about said components.

    • Official Post

    Testing the continuous cycles:



    I'd like to be able to replace more than one component type over cycles.
    Simulations takes way too long, 1 minute and 30 seconds? I noticed that it does ~2000 cycles before stopping.
    Maybe reduce it to ~100ish and then call it a day (reactor can do infinite cycles if max heat generated is <= max heat dissipated).


    Pulsed cycles:
    I have no idea how to work on this one, because talonius' planner gives us beforehand the timed cycle we'd have to follow based on the components.
    I might try the stop reactor if heat > X and restart if heat < X (Nuclear control)


    You should also check your private messages, talonius answered it I guess. You can read his code of the old reactor planner.


    Somewhat improved mox design: 0A140A140A140A140A0A140A1405140A140A0A140A1405140A140A0A140A1405140A140A0A140A1405140A140A0A140A1404140A140A

  • 2000 cycles? That's strange. As far as I can tell, I set it to simulate up to 5 million reactor ticks, which if I'm not mistaken is 100 cycles for thorium rods, 250 for uranium rods, or 500 for MOX rods. I'm not sure how to count the cycles for a reactor that uses a mix of two or more fuel types, though. Edit: I noticed one possible source of confusion using your design: it says 1996 items are replaced in that duration, but since you had 4 dual mox rods, that's really only 500 cycles for them.


    As far as replacing more than one component type, how would you automate that? I am not aware of any mod that would be able to do that properly. If you're manually replacing components, it seems to me that the simple cycle simulation should be sufficient to determine what it would take to get infinite cycles out of it (in terms of which components would need replacement and how long to let it cool down for).


    For the pulsed cycle, I suggest you start by running it in the "single cycle" mode and look at when certain components (or the reactor itself) break, and start with the on pulse being a second or two less than that, and maybe the same duration for the off pulse. Then you can tweak them up or down to increase performance or safety. I don't know if Talonius's planner properly handled the heat exchangers, because I don't entirely understand them myself (as you might recall, I had to ask for permission to adapt the IC2 code for them rather than going by Wiki descriptions), but they make it impractical to use anything but a simulation run to predict when components will break.


    As far as Talonius answering me, here's what happened: he hadn't replied to my private message, but I noticed his profile had a link to email him, so I tried that a few days ago, and he was fairly quick to respond (by email) with an explanation of his codes. If you look at post 68 in this thread, you'll see that I've already added support for codes from that planner.

  • As far as replacing more than one component type, how would you automate that? I am not aware of any mod that would be able to do that properly. If you're manually replacing components, it seems to me that the simple cycle simulation should be sufficient to determine what it would take to get infinite cycles out of it (in terms of which components would need replacement and how long to let it cool down for).

    Thats pretty easy with Gregtech or Logistics Pipe.
    Gregtech has a regulator that can put 9 different items into predefined slots.
    Logistics Pipe has the supplier pipe which can be upgraded to also insert into specific slots.

  • Okay, two new questions then:
    1. Have you confirmed that either of those actually work with IC2 nuclear reactors? (I can try them out myself later, but if you've already tried them specifically with IC2 nuclear reactors, I won't need to; until then, the behavior of the spaces in IC2 nuclear reactors is different enough from other machines to make me uncertain)
    2. Do you have any suggestions regarding how my planner could show options for automating replacement of multiple components?

    • Official Post

    I have about 2:


    Allow pulsed cycle to be mixed with continuous automation.
    Moar options!
    option box - fuel rods are always replaced once depleted
    option box - neutron reflectors are always replaced once depleted


    option box - vents are replaced once their heat reaches ~typed threshold~ and reactor stops for ~typed time~ seconds (this time can be zero)
    option box - coolant cells are replaced once their heat reached ~typed threshold~ and reactor stops for ~typed time~ seconds


    New values on Simulation:
    Duration of reactor inactivity due automation per cycle
    Time between automation intervals.


    By the by, I think you should "absorb" some more features of the old reactor planner, like how it automagically calculated the on/off pulse cycles.

  • Allow pulsed cycle to be mixed with continuous automation.
    Moar options!
    option box - fuel rods are always replaced once depleted
    option box - neutron reflectors are always replaced once depleted


    Okay, those two should be simple enough to implement (when I'm feeling better and not too busy with my day job).


    option box - vents are replaced once their heat reaches ~typed threshold~ and reactor stops for ~typed time~ seconds (this time can be zero)
    option box - coolant cells are replaced once their heat reached ~typed threshold~ and reactor stops for ~typed time~ seconds


    Might be a little trickier, but I presume the thresholds would be percentages, since different vents and coolant cells have different capacities for heat. Should I limit the percentages based on AE2 fuzzy card abilities, or is there some other mod that's better at using a range of damage values for determining when to remove the components?


    New values on Simulation:
    Duration of reactor inactivity due automation per cycle
    Time between automation intervals.


    "Per cycle"? I asked this before, but I don't think I got an answer: How does one define the cycle length for a mixed-fuel reactor?


    By the by, I think you should "absorb" some more features of the old reactor planner, like how it automagically calculated the on/off pulse cycles.


    I think you underestimate the difficulty of that. Two component types are impractical to predict without simulating the reactor: 1. heat exchangers 2. MOX fuel (especially in a fluid reactor)

    • Official Post

    Might be a little trickier, but I presume the thresholds would be percentages, since different vents and coolant cells have different capacities for heat. Should I limit the percentages based on AE2 fuzzy card abilities, or is there some other mod that's better at using a range of damage values for determining when to remove the components?

    There probably are other options and they are likely similar to AE2's, but the only one in my mind was AE2 fuzzy automation indeed.

    "Per cycle"? I asked this before, but I don't think I got an answer: How does one define the cycle length for a mixed-fuel reactor?

    Consider the fuel with the longest cycle (MOX < Uranium < Thorium)

    I think you underestimate the difficulty of that. Two component types are impractical to predict without simulating the reactor: 1. heat exchangers 2. MOX fuel (especially in a fluid reactor)

    I never said it was easy ^^ , I even said "automagically" for on/off talonius pulse detection.

  • Please add a more summarized component list for easy comparison. While the current list is good for when you want to build the thing it makes it very hard to compare with other designs.
    Something like
    100 copper, 50 iron, 40 lead etc etc


    Also, what is included in the material list, only the components or also the reactor itself (regular, 5x5)?

    A question that sometimes drives me hazy; am i or are the other crazy

  • Please add a more summarized component list for easy comparison. While the current list is good for when you want to build the thing it makes it very hard to compare with other designs.
    Something like
    100 copper, 50 iron, 40 lead etc etc


    I had been thinking of the component list in terms of it being a planning aid rather than a comparison aid. Two questions about that:
    1. For materials like cables and iron bars, which are crafted in groups of 2 or more instead of individually, should it preserve fractions or round up?
    2. For components that aren't GregTech-specific, should I go by the default IC2 recipes or the default GregTech recipes? For example, several of the IC2 cable types have higher output ratios when using a GT wiremill than when using an IC2 metal former.


    Also, what is included in the material list, only the components or also the reactor itself (regular, 5x5)?


    Only the components, because of this post:

    Could you change the resources section to not show the cost for the reactor? That doesn't seem like a good decision, especially since it's sort of the standard not to include, since it's a given that you have a max size reactor >.>


    Also, for the fluid reactor (which I don't like seeing called 5x5 when it's really 5x5x5, ignoring the additional blocks that need to be placed starting next to it to make EU from the hot coolant), the material cost can vary significantly depending on how many fluid ports, access hatches, and redstone ports are used.

  • I think exact amount would be best.


    I would say base it on industrialcraft where possible. Then you could add a toggle for gregtech so you can calculate it by gregtech defaults aswell.


    It makes sense that the cost of gregtech designs use gregtech defaults and ic2 designs use their defaults so both are needed.

    A question that sometimes drives me hazy; am i or are the other crazy

    Edited once, last by Blackpalt ().

  • How are you currently calculating efficiency? I seem to believe it is wrong now that i started looking into it. And so is the old designer since it does not take into consideration that the fuel rods now last for 20000s rather than 10000s. The efficiency is correct for mox fuel rods (as they are still 10000s) but it is half of what it should be on regular reactors and fluid reactors.


    The efficiency of the thorium reactors are also wrong.
    0D0C0D0C0D0C0D0C00110D140D140D1109000D0C0D0C0D23230C00110D140D231C1C23000D0C0D0C231C1C23000C0D110D0C23230B00
    This should be 7


    112million eu/16 thorium rods=7. The simulator says its 1,4

    A question that sometimes drives me hazy; am i or are the other crazy

    Edited once, last by Blackpalt ().

  • My efficiency calculations are loosely based on this: http://wiki.industrial-craft.n…lear_Reactor#Efficiency_2
    I take the minimum, maximum, and average of the EU or heat per second (depending on which style the simulation is running in), divide by the expected amount from a single uranium rod, then divide by the total number of fuel rods (as long as there are any - this measure of efficiency would become undefined for a secondary fluid reactor that runs with no fuel rods by venting from pre-heated coolant cells), with dual rods counted as 2 and quads as 4.
    Where do you find a definition of reactor efficiency that's based on the total output over the entire reactor cycle?