Today I thought I’d break from the usual, and go into detail about how this project of mine came to be. As you know, it started with the question: “What would space warfare actually be like?” A lot of sources, mostly hard science fiction literature, have tried to answer that question at one point or another. Other sources, like the Atomic Rockets website, does a great job of detailing the ideas at a high level.
For me, though, I wanted a simulation, one that was actually based on real equations. This is because in my experience, whenever you develop system this complex, it tends to surprise you, and will often overturn your assumptions. And trust me, it has surprised me continuously throughout the project.
The project originally was going to be not nearly as detailed as it is today. The original project would use black boxes for technologies: a railgun would be a system with X mass, Y volume, Z exit velocity of a W mass armature. The details would be glossed over. That worked fine for existing chemical rocket designs, because I simply had to copy and paste the numbers cited for SpaceX’s or NASA’s rocket engines.
It all started with railguns, though. When I went to do the same for railguns, there was a problem. The field of modern military railguns is limited to a handful of actual railguns that have undergone testing and deemed viable. I could implement these particular railguns as black boxes as well by collecting all the data I could find on them.
But what I wanted was scaling relations. If I took this railgun design, and doubled the power consumption, could I double the exit velocity? If I doubled the rail length, would that double the exit velocity? Is it possible to assume a simple efficiency percent, and derive my exit velocity based on the input energy and armature mass?
This answer to these questions, as I later discovered, are No, No, and No.
What I was looking for was simple equations which would relate the mass, power consumption, exit velocity, and dimensions. If I had these, I could scale these weapons up or down in various ways depending on the situation. A small drone would need a low power, low mass railgun, while a capital ship might have a ship-sized railgun of incredible power. I was looking for simple (ideally linear) relations between these attributes of a railgun.
As it turns out, that is not possible. The equations are complex, highly nonlinear, and many were unsolvable unless using numerical integration.
But I still wanted scaling laws for railguns, so I pressed on.
I started with the lumped parameter model for railgun force:
Okay, simple enough. At this point, I thought I could still have a simple equation describe my railguns. All I need is the inductance and the current and I can integrate the force across the length of the rails to get the exit velocity.
First the inductance. Wikipedia gives a gross estimate for this, as well as a simple equation which estimates the inductance by treating the railgun as a pair of wires. I wasn’t too keen on the estimate nor the equation because I was interested in a railgun that was cylindrical bore, and this thesis conveniently had what I was looking for. It developed an inductance equation for a cylindrical bore railgun based on the railgun’s bore radius, rail length, and rail thickness. Perfect for developing scaling laws relating the railgun’s dimensions and mass to the exit velocity. The equation itself was derived in the next chapter of the thesis and is duplicated below (for a given rail opening angle of 40 degrees).
Where the rail separation, is the rail thickness, and the coefficients through are derived constants which can be found in the thesis itself.
It’s a hefty equation, but it remains constant for a given set of railgun dimensions. What’s more is that it provides a very direct scaling relation between the dimensions and the ultimate railgun performance. A highly nonlinear relation, but a relation nonetheless. Just what I was looking for.
For the current, I found there are a number of ways to get pulsed power through your railgun: batteries, capacitors, inductors, compulsators, flywheels, hydrodynamic generators. Or, you can ignore these entirely and use continuous power. Where you attach the power supply also very significantly affects the final force. You can attach your power supply at the start of the rails, and the current will fall off as the projectile accelerates down them, or you can attach it at the end, or anywhere in between. Not only that, various designs implement multiple power supplies which attach at separate points along the rails to keep the current high.
At this point, the number of design choices was starting to undergo a combinatorial explosion, so I ended up setting some of the choices in stone. Only capacitors were implemented for pulsed power, and I implemented continuous power as well. Also, I set the power supply to only attach at the start of the rails.
In any case, the current was derived in two different ways for both pulsed and continuous power, and we’ll go into pulsed power. Resistance of the railgun is found easily by using the resistivity and dimensions of the rail and armature material. The capacitor itself requires knowledge of the capacitor’s capacitance (obviously), and the railgun was treated as an RC circuit, with the rails and armature being the resistor.
The voltage of the circuit is found simply with:
Where is the voltage at a certain time, is the initial voltage, is the time, is the circuit’s resistance, and is the capacitance. From the voltage, the current can easily be calculated, and this current can be plugged back into the force equation.
There is one final wrinkle, though. The voltage relies on , the time of the system, and the resistance relies on , the distance along the rails. After some wrangling, I set the equation in terms of either or , but in either case, the integral ended up being non integrable.
Thus, I had to use numerical analysis to calculate the final exit velocity (specifically, I’m using a Fourth Order Runge Kutta method), and I finally had my exit velocity.
My inputs were the following values: Rail Bore Radius, Rail Thickness, Rail Length, Rail Material (for resistivity), Armature Material (for resistivity), Armature Mass, Capacitance, Power Consumption. Not bad. Capacitance is derived further, but that’s a whole other blog post. So what I finally end up with is a series of values that I can tweak in order to see just how the exit velocity turns out. Not only that, but because the dimensions of the railgun are enumerated, I now know the railgun size and using the material density, I have the mass of the railgun as well.
But we’re not done yet! These equations allow you to invent hypothetically ideal systems which can’t exist in real life. The missing link is thermal and mechanical stresses on the system. The following limitations are implemented and must be checked for in a railgun:
The railgun rails can melt if the temperature becomes too high. If you read through the thesis posted earlier, the temperature concentrates are certain points, and these points need to remain under the melting point of the material for the entire firing. Additionally, the armature itself suffers similar temperature excesses and must be accounted for. The rails ablate from thermal stresses occurring far below the melting points of the rail and armature materials, and close attention must be paid here as well.
The recoil stress of the railgun will push the rails apart, and the rails must be able to withstand this stress without deforming. The barrel itself can be treated as a cantilever beam and needs to be able to handle the cantilever beam deflection stress when it fires. The armature suffers significant stresses as it is accelerated down the rails as well, and needs to be able to withstand them, lest it shatter.
Also, the bulk temperature of the railgun increases with each firing, and the railgun needs to be able to dissipate this excess heat in a timely fashion either through a coolant loop using convective cooling, or radiatively, through the barrel into space itself. Finally, thermal expansion stress can cause both the rails or the armature to crack and needs to be dealt with.
These limitations are all implemented, and will be covered in a later blog post, since I’ve rambled on long enough here.
But once the limitations are all enumerated, I finally had what I was looking for: scaling relations for railguns. Given simple inputs like rail length, armature mass, power consumption, and so on, I was able to get reasonably accurate metrics for the exit velocity of a railgun, in addition to much, much more.
So this is just one particular origin story of how Children of a Dead Earth came about, in particular, why the granularity of the simulation is the way it is. There will be more origin stories to follow, such as on how very disparate parts of the simulation came together.