Spelsim 1.0.0

December 28, 2007

*Back to the simulator page.*

- Units
- Interface Basics
- Cable Tab
- The Planet
- The Material
- The Cable
- Elements Tab
- Events Tab
- Simulate Tab
- Simulate Notes

SpelSim is a Space Elevator calculator and simulator. You can select values for all of the key parameters of the system, and the program will calculate and display the key values of the space elevator cable under those conditions. You can then simulate the rotation of the cable with the planet, with a visual presentation of the cable plus additional graphs displaying cable parameters such as stress. You can simulate cable breakage events and see what happens to the pieces.

All numbers are expressed in the MKS system, using meters (m), kilograms (kg), and seconds (s). Units for a field are shown to the right of the value. Fields which display no units to the right of the value are unitless. The notation (m^2) means meters squared; m/(s^2) means meters per second squared.

SpelSim presents four tabs: Cable, Elements, Events and Simulate. Start with the Cable tab to set the parameters for the planet, material, and cable to allow SpelSim to calculate the rest of the cable values. After setting up the cable, you can inspect the individual elements of the cable using the Elements tab, or start the visual simulation in the Simulate tab.

The Cable tab is divided into three panels, one each for

- Planet (around which the cable orbits)
- Material (of which the cable is composed)
- Cable (for the configuration of the cable)

To the right of the bold label in each panel
is a preselected set of known items from which you can choose.
If you wish to set your own values for that panel, select the "custom" entry.
Editable fields in that panel will turn white.
Output-only fields will stay gray, and have *italic* labels.
These fields contain values which are calculated based on your inputs.

To change a value, select the "custom" entry for that panel, edit the value in the desired field, or delete it and type in a new value, and press Enter. When you press Enter, all of the output-only values will be recalculated and displayed. If the values you select do not give a sensible answer, you may see question marks in some fields. For example, if you select a weak material on a planet with strong gravity and slow rotation, the required values may exceed what can be represented in a double variable (about 10^300), so you will get question marks for the cable values.

You can select values for the following planet parameters:

- Mass - mass of the planet in kilograms.
- Radius - radius of the planet in meters. This will affect the calculation of surface gravity and all of the altitude numbers. Note that in reality, planets are not perfectly spherical, so do not have just one simple radius. Real rotating planets bulge slightly at the equator due to the rotation, and have other nonuniformities (such as a mountains or continental plates) that lead to deviations from a perfect sphere. This simulation ignores these details, but note that this can have an effect on some of the numbers, especially the calculated altitudes, which might thus be off a small amount from the values you expect.
- Period - period of rotation in seconds. If you want to know the rate of rotation expression in radians per second, divide 2*pi by the rotation period. This is the sidereal rotation; note that the period of Earth is slightly less than one full day because the Earth is moving around the Sun at the same time as it rotates around its own axis.

- Surface gravity - in meters per second squared (acceleration). Calculated as G*M/(r^2), where G is the universal gravitational constant (6.6e-11 kg*(m^3)/(s^2)), M is the mass of the planet, and r is the radius of the planet. This value does not take into account the apparent centrifugal force caused by the rotation of the planet.
- Density - in kilograms per cubic meter. Calculated as M/V where M is the mass of the planet and V is its volume, where V is (4/3)*PI*(r^3) where r is the radius of the planet. This is an average density for the whole planet. In reality, most planets are denser at their core and less dense at their surface.
- Synchronous altitude - the height in meters above the surface of the planet at which a satellite orbiting in the planet's equatorial plane will appear from the planet to remain in a stationary point in the sky. Calculated as G*M*(p^2)/4*(PI^2)-r where G is the universal gravitational constant, M is the mass of the planet, r is the radius of the planet. and p is the period of rotation of the planet. Note that the calculated synchronous altitude for Earth is 35,793 km rather than the standard 35,786 km. This is due to inaccuracies in the model caused by assumptions such as that the planet is a perfect sphere.

For comments about the values used for the known planets, download the kit, unpack the source, and look in the file src/net/jimmc/spelsim/Planet.java.

You can select values for the following material parameters:

- Strength - the tensile strength of the material in Pascals. 1 Pascal = 1 Newton per meter squared. 1 Newton = 1 kg*m/(s^2), so 1 Pascal = 1 kg/(m*s^2). For real world materials, the strength can vary quite a bit depending on which formulation of that material is used. For example, there are different kinds of Nylon that range in strength from 20 to 200 MPa (mega-Pascals).
- Density - in kilograms per meter cubed.
- Young's Modulus - the stiffness of the material in Pascals.

- Yield Strain - Yield Strength divided by Young's Modulus.

You can select values for the following cable parameters:

- Capacity - the amount of mass the cable is capable of lifting from the surface of the planet, in kilograms. Changing this number by a constant factor C will change the base area and cable mass by that same factor C, but nothing else will change.
- Length - the total length of the cable in meters. As the cable is made longer, the required counterweight at the other end becomes smaller. In real life, there comes a point where the cable tapers off to such a small size that it can't practically be made any longer. This simulation, however, merely continues to make the cable thickness smaller and smaller as the cable goes out. Note that with a large cable length, the counterweight mass (see CW/Mass) can be extremely small. For slowly rotating planets such as Luna or Mercury, you will need a much longer cable.
- Safety Factor - the derating factor to use on the strength of the material selected for the cable. If you select a material with a strength of 100, you don't want to design the cable to assume a strength of 100, since any small errors can put you past the strength of the material and it will break. The Safety Factor field allows you to select how much of a safety buffer you want to have. The maximum design stress used in the cable is the material strength divided by the safety factor.
- Finite Elements - the number of elements the program should use when performing its calculations and simulations. A larger number gives more accurate results in this panel, but can cause problems during simulation (see the discussion below). A value of 10,000 will give you good results for the cable values, but you will probably not be able to simulate that many segments.

The following values for the cable are calculated and displayed:

- Mass - total mass of the cable.
- CW/Mass - the ratio of the counterweight mass at the end of the cable to the cable mass. As the cable gets longer, this number gets smaller. If the cable is exactly the same length as synchronous altitude, then counterweight mass and thus the CW/Mass ratio is infinite. If the cable is shorter than synchronous altitude, then the counterweight mass would have to be negative in order to keep the cable up. You will see this as a negative CW/Mass value; this tells you that the cable will not stay in synchronous orbit because it is too short.
- Base Area - the area of the cross section of the base of the cable in square meters. This is calculated as (C*g)/(S/F) where C is the cable capacity, g is the gravity at the base of the cable (the planet's surface gravity), S is the material strength, and F is the safety factor.
- Taper - the ratio of the area of the cross section at the thickest part of the cable (at synchronous altitude) to the base area. Stronger and lighter materials give a smaller taper, which is crucial to the feasibility of building a working cable, since a large taper means a large mass. Note also that a smaller safety factor gives a smaller taper.
- C of Gravity - the altitude in meters above the surface of the planet of the center of gravity of the cable and counterweight. Note that this value is below the center of mass.
- C of Mass - the altitude in meters above the surface of the planet of the center of mass of the cable and counterweight.
- C of Centrifugal - the altitude in meters above the surface of the planet of the "center of centrifugal force" of the cable and counterweight. Note that this is above the synchronous altitude and above the center of mass. The fact that the center of centrifugal force is above the center of gravitational force means there will be a torque on the cable any time it strays from vertical, and that torque will tend to keep the cable vertical.

The Elements tab allows you to inspect the individual elements of the table. You can examine the static values for element mass and cross-section, and the dynamic values (of the simulation) for stress (at the bottom of the list), acceleration, velocity, and position. This panel also displays the "ideal" acceleration, velocity and position, which are the values that this element "should" have if the element calculations and simulations were "perfect". These values are calculated by taking the initial values and rotating them by the amount of rotation of the planet. The difference between the ideal and actual values are listed as the drift values. By looking at these values, you can get an idea of how well behaved the simulation is running. All vector values are displayed in both rectangular and polar coordinates, where the center of rotation of the planet is the origin of both coordinate systems.

The Elements panel gets a list of elements and displays one of them. You can change which one is displayed by entering an index number into the Index field, or by using the + and - buttons to move to the next or previous element in the list.

You can modify which elements appear in the list by changing the values in the Filter Parameters panel on the left side of the tab.

The Events tab allows you to specify events that affect the simulation. For each event, you can specify the time at which that event occurs, the type of event, and the arguments for that type of event.

There is currently only one type of event: Break. This event type takes a single integer argument, which is the index of the cable element to be broken at the specified time point.

You can delete events by pressing the Delete button next to the event, or add new events by pressing the Add Event button at the top of the tab. Events are executed in time order, independent of the order they appear in the list.

The Simulate tab allows you to simulate the rotation of the planet and cable. This tab is divided into four areas:

- Across the top of the tab are the control buttons: Run, Stop, Step and Reset.
- Below the control buttons on the left side are the simulation control parameters and output data. Click on the Parameters button to see and change the simulation control parameters. Click on the Status button to see dynamic information about the simulation as it runs.
- In the lower left corner are the Line Charts. Click on the Setup button to control which data values are displayed in the chart. Click on the Chart button to view the chart.
- On the right side is the visual simulation window. The cable is color-coded according to stress: when operating at the design load, the color is yellow. As the stress drops from there to zero, the color goes from blue to green. At zero stress (which probably means the cable is broken), the color is black. As the stress goes up from the design load, the color goes from pink to red.

You can control the following parameters of the simulation:

- Sim Step Size - the size in seconds of each simulated step.
- Ticks per seconds - the number of simulation ticks to perform in each second of real time. This is of course limited by the speed of your computer.
- Damping factor - the cable is modeled as a set of connected springs and masses. The damping factor adds damping in parallel with the spring. This can simulate real damping, but is also used to compensate for physical inaccuracies caused by discrete simulation (see Notes below). A damping factor of 1.0 will damp out all movement in the direction of the spring tension after each simulation step.
- CW Derating - the amount by which to reduce the effective mass of the counterweight when simulating. This is to compensate for physical inaccuracies cause by the discrete simulation (see Notes below).
- Ground Drag - a drag factor that reduces the velocity of elements that are grounded (have fallen to the planet surface due to cable breakage). This is implemented in a too-simple way, so large values will cause distinctly non-physical behavior.
- Max Refresh Rate - the maximum number of times per second that the simulator will attempt to update the screen display. If this number is larger than Ticks Per Second (and your computer is fast enough to keep up with that number), then the display will be updated after every simulation tick. By setting the refresh rate to a lower number, you can allow your computer to spend more time simulating and less time updating the screen at a rate too fast for you to see anyway.
- View Scale - how much of the universe you will see in the display window. Fixed will show you all of the original cable orbit. Planet will show you a close up of the planet, which can be interesting if the cable is falling onto it. Bounding will zoom out or in to ensure that you can see everything. This is useful if you want to see what happens to the top of a broken cable.
- Perspective - Sidereal will show you the planet rotating. Planet will show you the universe rotating.
- Algorithm - the simulation algorithm to use. Forward is the standard and simple Euler forward integration. Trapezoidal is a slightly more complicated method that should theoretically give better accuracy, at a cost of about twice as many calculations. Circular is an approach that assumes that motion in an interval is circular, and calculates using that assumption and an approach somewhat like Trapezoidal.
- Debug Output - controls whether some debug output is printed to stdout. Mainly useful to the developer.

The Line Charts area lets you see various simulation parameters as a function of the element number. The small circle on the left end of the chart represents the planet. The horizontal axis is the element number, with the right end of the axis representing the last (topmost) element of the cable.

To select which data items to display in the chart, click on the Setup button, then click on the checkboxes to toggle them on for the items you want to display. Click on the Chart button to view the selected data.

Each item is displayed in a different color and labeled at the top of the Line Chart. To bring a specific line to the top, click on the label for that line.

The number to the right of the label for each item is the value of the top of the chart (on the Y axis) for that item. For all angle data, the max Y value is always PI. For all other data, the max Y value is auto-scaled so that the maximum magnitude value of that data is at the top or bottom of the chart.

This simulation is done using discrete elements. This introduces artificial high frequency components into the cable dynamics, which in turn causes inaccuracies in the results. There are two parameters which allow for some compensation: the Damping Factor and the Counterweight Derating. If you change any of cable parameters, the number of cable elements or the simulation step size, you can play with these two values to see if you can improve the accuracy of the simulation. In any case, using larger step sizes and smaller element lengths will result in less stability, so the simulation is likely to diverge soon. This typically results in spectacular mass breakage, which can be fun to watch on the screen, but is probably not realistic. (Try running with 1000 elements, step size 10, damping 0 and CW derating 0.) In general, you should view these simulations with a grain of salt.

*Back to the simulator page.*