Swing-by Calculator (SBC)
JAQAR's NEW Swing-by Calculator version 8 is available for downloading. The Swing-by Calculator is a tool to find trajectories from a departure planet to an arrival planet or heliocentric orbit via multiple swing-bys. A maximum number of five swing-bys is allowed. Final conditions at the arrival planet can be a fly-by, atmospheric entry or planetary orbit. JAQAR has customers and students all over the world using the SBC; its customers include EADS, NASA, SSTL, MD Robotics and QinetiQ. See instructions at the bottom of this page on how to download the SBC.
What's new in SBC 8?
- SBC-COM. The SBC acts as an automation object that the user can call from any other program. For example, a vba script in Excel can call the SBC to perform an optimization and retrieve the best solution back into Excel. Useful when a loop needs to be done to optimise trajectories to multiple targets such as asteroids.
- Lunar swing-by. The Moon can be chosen as a second planet in order to first do a Lunar swing-by before escaping from the Earth.
- Added low-thrust control. Apart from Biesbroek's low-thrust Targeting Method (using two swing-by parameters plus the start-time of the low-thrust arc), the user can now also select Exponential Sinusoids as low-thrust control (as developed by Petropoulos) using only k2 as optimization parameter.
- Retrograde orbits. For each transfer leg the user can select if that leg is prograde or retrograde.
- Maximum deflection angle. For each deep-space maneuver, the deflection angle of the preceding swing-by can be set to 'maximum'. This sets the swing-by altitude to the minimum value and removes the deflection angle as an optimization parameter.
- Manual launch mass. The user can select 'manual launch mass' as launcher. In this case the launch mass will equal the user-supplied value, independent of the C3 and declination.
- Improved GUI. The GUI now consists of different tab-sheets, related to the launch, sequence, transfers and arrival conditions. Also the Best Solutions file, Opportunities file and all output graphs are embedded inside the GUI.
- Add-in for user-supplied cost function. The user can supply his/her own cost-function to be maximized by the SBC by compiling the cost function as a DLL called Arrival.dll. The SBC supplies a number of parameters to the DLL to help calculating the cost-function.
- Floating-point ranges for the DSM parameters. Parameter related to deep-space maneuvers such as deflection angle, azimuth or launch C3 and declination can now be inserted as floating-point numbers up to 5 decimals.
- More information in the Best Solutions file. This file now also shows the deflection angle and rotation azimuth for each swing-by (useful when using powered swing-bys as initial guesses for DSM's), plus absolute values for both incoming and outgoing infinite velocities.
- Network licenses. The SBC allows network licenses. Up to two different licenses can be supplied. For any type of license, the location can be chosen and indicated in the GUI.
- Constraints weight factors. For 12 constraints, weight factors can be given in the GUI. When one of the constraints is not met after an optimization, the user can increase the weight to improve convergence.
- Constraint factor. In principle a weight factor that applies to all constraints; a ratio between the constraints and the optimization function. Useful if different constraints are not met.
- STK interface. The SBC creates Astrogator scenarios using STK/Connect, in a similar fashion as the LTOC. The SBC can be called from an HTML page within STK, optimise and send back the data using STK/Connect (Connect license not needed).
- Added launcher performances: Minotaur and Taurus.
More features of the Swing-by Calculator:
- Launcher performance estimation of Soyuz(ST)-Fregat, Proton-K/Block-DM, Dnepr-Varyag, Delta-III/IVM/IVH, Zenith 3, Atlas V, H-II, Ariane 5 (ESV/ECA/ECB). Possibility to include analytical launcher performance and link to Dynamic Link Libraries (DLL's) calculating launch performance.
- Built-in analytical and JPL planetary ephemeris of all planets in the Solar System.
- Possibility to include user-defined bodies such as asteroids.
- Direct transfer optimisation with C3 contour plot (or 'Porkchop' plots) output files for C3 values (at launch, arrival or total C3), total DV or mass (at launch, arrival or payload mass), which can be imported into MS Excel, Matlab (see the bottom of this page) or Mathcad.
- Lunar Transfer Orbit via direct transfers.
- Multiple Swing-by trajectory optimisation (up to 5 swing-bys). Choose from un-powered no DV) swing-by, powered swing-by (DV at periapsis) or aero-gravity assist (for given lift-to-drag ratio). Possibility to select multiple revolutions between swing-bys and manually or automatically select short- or long-period intermediate orbits.
- Optimisation of Deep-Space Manoeuvres (DSM) between swing-bys.
- Use of resonance orbits (recurring swing-bys) for energy or inclination change.
- Possibility to enter an initial state instead of a planet departure.
- Four different final conditions: fly-by at planet, atmospheric entry, planetary orbit (defined by apoapsis and periapsis) or heliocentric orbit (defined by aphelion, perihelion and inclination with respect to the Solar Equator).
- Possibility to choose optimisation criteria: payload or dry mass, C3 at launch, C3 at arrival, total C3 or total DV.
- Launch window determination using the 'opportunities' file showing all launch opportunities that match a given minimum final mass or maximum launch C3.
- Create trajectory output files compatible with STK (both free as 'Pro' version), IMAT, Excel, Matlab and Mathcad.
- Create STK/Astrogator Mission Control Sequence allowing recreation of the trajectory using numerical propagation.
- Mission specific parameter input for correct mission analysis: engine Isp, launcher adapter mass, mid-course manoeuvre DV, gravity loss, tank mass as function of propellant mass, and Lander/Descent Module mass.
- Four optimisers available: enumerative (systematic search), Monte Carlo, genetic algorithm and Differential Evolution.
- Define the parameters using a user-friendly GUI. The GUI shows the status of the optimisation and allows the user to start and stop an optimisation.
- Visualisation of the optimal trajectory with easy-to-use graphical window that allows for copying the plot to your own documents, print it or save it as a bitmap.
- Low thrust optimisation. Possibility to implement a thrust-law (thrust force as function of distance to the Sun) for SEP (Solar Electrical Propulsion). Auxiliary visualisation such as the thrust over time, mass over time, Sun-Spacecraft-Earth angle and more.
- Gravity loss calculation tool
The program uses an analytical or JPL ephemeris and a Lambert-solver to calculate the Swing-by values with respect to the departure and arrival planets. Any departure, swing-by and arrival planet within the solar system (namely Mercury, Venus, Earth, Mars, Jupiter, Saturn, Uranus, Neptune & Pluto) can be chosen however the program allows implementing user-defined bodies. A genetic algorithm (GA) and differential evolution (DE) algorithm is available for fast optimisation: complex trajectories with multiple swing-bys are optimised in a few minutes!
The program runs under Windows XP or higher environment, and was developed by Robin Biesbroek.
SBC is part of JAQAR Astrodynamics package and the core files of this package must be downloaded and installed first to make SBC work properly. Press here to download the JAQAR Astrodynamics core files. To download the SBC installation files click here: Download SBC. Please note that the file is 14 Mb.
For users upgrading from version 7: Please note that the Astrodynamics installation files need to be upgraded too, click here: Download SBC upgrade to download the upgrade. Unzip the contents to the JAQAR program directory and overwrite the files with the ones stored in the zip file.
Scientific papers published about the SBC can be found on the Papers page.