Modeling Heat

In modeling any of the elements of the ship the intent is not so much for pure realism, rather what makes for an interesting interactive environment. One of the key goals of the project is entertainment. I found when working to see if I could integrate with the Sim Orbiter program that dealing with all of the elements in a true simulation is very difficult. (Try doing a launch and dock with the International Space station sometime, it requires a lot of work to get there successfully).

In our case we are looking to have elements that show what is going on and have the interaction simple to manage. The current element I am working on is the engines. From a control point of view it is pretty simple. Thrust is from 0 to 100. Basic output is how much power is coming out. To make things more interesting it would be nice to see other information about how the engine is performing. A common property of all objects is their efficiency. In the case of an engine the loss of energy becomes heat. This means that the temperature of the engine will rise as it is used. Limits can be set for operating temperatures so that either the engine will shutdown when a limit is reached, or the engine will begin to take damage from excess heat.

To achieve this we need to define a reasonable heat model for the engine. The heat applied to the engine will be the energy loss factor based on the efficiency and damage elements. This energy needs to be added to the engine. If we want to do it somewhat realistically then it is time to drag out the physics books. We are interested in some key physical properties: The mass of the material, and the Specific Heat of the metal used in the engine, and the Thermal Conductivity. There are also some formulas for basic Radiant Energy that can be used for direct heat loss, but as with any engine some form of cooling system will be needed. (Yet another device to monitor).

From some web sites I found some useful values:

Thermal Conductivity - W/m - °C
Density - Kg/m^3
Specific Heat - J/Kg - °C

Steel (average of various types)


So if the engine is made of Titanium and is 1 metric ton then it should take 460 J/Kg * 1000 Kg = 4.6E+5 J to raise the temperature of the engine 1 C°. (At the moment with the current settings the engine produces 8000 J of thrust with 2000 J of heat per second.) Obviously real life engines are produced from many different types of metals so the formula would be way more complicated.

A cooling system will basically work the same way with a max amount of heat that it can transfer from the engine. Radiant heat is calculated by the following formula H = AeσT^4 where A is the surface area, e is a constant from 0 to 1, σ is a universal constant 5.67E-8 and T is the absolute Temperature of the element. With all of these elements it should provide for a good number of status display controls for someone to monitor the engine status.