I believe Alblaka recently mentioned that he wants to get rid of CASUC type reactors . I had an idea that might allow similar levels of cooling without (hopefully) a lot of extra work for the coders, since it might be able to re-use a lot of the energy net code.
Basically, instead of moving actual coolant around, you'd just use "heat units" (similar to EU).
At a high level, it would work like this:
- Attach a heat exchanger block to the reactor in place of a chamber. This would have a 16-slot inventory that accepts heat dispensers. Each one would allow the transfer of 128 HU (heat units) per reactor tick from the hull to the heat exchanger for a max of 2048/tick. The heat exchanger would be similar to an MFE or MFSU with a storage of 2048, and input and one output face.
- Create a coolant loop. The pipe blocks would work similar to cables, except you'd have extreme, high, medium, and low volume instead of voltage, capable of carrying the corresponding amount of heat units per tick (not exploding, just unable to carry more than that). It could require transformer analogues or just allow connecting smaller pipes to bigger ones. The loop has to start at the heat exchanger's output face, and return to an input face(s).
- Each section of pipe would dissipate 0.125 HU/t to air or stationary water, and 0.5 HU/t to flowing water, for 0.5-2HU/t per pipe section. Pipes carrying more than 128HU/t have a chance to evaporate adjacent water (maybe not... might create a lot of CPU load). This means to reach current CASUC cooling levels you'll need huge cooling towers (flowing water, remember), just like real reactors, with at least 1024 pipe sections (or over 1/2 cubic chunk in the most efficient configuration).
- Any heat left in the coolant is returned to the heat exchanger, reducing the amount it can take from the reactor next cycle.
- Charge the cooling system. The heat exchanger interface would have a slot that accepts cooling cells. It would take one cell for each pipe segment connected to the system. (no, you don't get the empties back) Any time you make ANY changes to the cooling loop, you'll have to repeat this step from the beginning, which makes it very expensive to fiddle with large reactors.
- The heat exchanger would reduce reactor output by 1EU (HV & EV pipes), 2EU (MV pipe), or 4EU (LV pipe) per reactor tick for every pipe section in the system to run the pumps. This translates to about a 10% loss on a 2kEU, 2kHU reactor.
Hopefully it would be possible to calculate the heat loss of the heat exchanger just once, and thereafter when it changes. That would mean that the only ongoing calculation is the heat exchanger block subtracting the loss number from storage, then transferring heat from the reactor.
= iron block
= nothing
= 4 EV pipe
= 4 HV pipe
= 4 MV pipe
= 4 LV pipe
= pump
= reactor chamber
= EV pipe
= heat exchanger