Jump to content

[WIN] Flyby Finder V0.86 [KSP1.3]


Recommended Posts

Funny you should ask about Real Solar System. I have been using the Realism Overhaul mod set for about a month now, it's been so fun I haven't touched Stock in that time. I always felt a bit guilty when aerobraking at Jool with a ship that had legs and struts sticking out all over the place, or sending a Kerbal on a 10-year mission to Eeloo with no food or air. For those who might take this as criticism of stock, it's not- I like the way one can start with most real-space difficulties turned off. It let me have a lot of fun learning the astrodynamics without having to worry about other aspects of space flight. Now I'm ready for more. Plus it's fun to think one could actually build the craft I've been building. I've got to post my Moon direct mission somewhere.

In any case, I've mastered RO Moon missions and am turning my gaze to the planets, so that means I need...

EDIT: I've moved all pictures of FF for Real Solar System to the release thread for it, link is below.

I don't have to worry about whether to use the 24/365 or 6/426 time systems with this!

It's not ready for prime time though. There have been some extra tricks in teasing out the planet start positions and the precise value of big G in RSS. I need to test the accuracy of the program out to 10 years or so to see if I have it right. I've only tested flights to Venus in the first 2 years so far, so I don't want to release it yet. But I'm working on it.

Hah- you're immelman- I used one of your superb grand tour missions as a test of Flyby Finder's accuracy out to 20 years in stock. Have you done any big missions with Real Solar System?

UPDATE: I have now released FF for RSS, it is here.

Edited by PLAD
Link to comment
Share on other sites

  • 7 months later...

PLAD, I’m interested in exploring similar routes to your KEKKEKKJâ€â€in particular, later ones (or later KEKKJs) that leave at least 5 years for Vector’s Mun magic beforehand.

*Here are the start and encounter days if anyone is crazy enough to try it, enter them into LambertE to get all the mission data:

K817.4-E853.6-K932.4-(dbl.96)-K1358.5-E1394.9-K1481.9-(dbl.435)-K1694.95-J2300.

Note that you'll orbit the sun 5 times between the first two K's.

How’d you come up with that one? And I don’t know if LambertE used to be different, but as it is, it doesn’t appear to accommodate more than 5 bodies in a route, for folks to examine the route in it as you suggest. (Also, I’m pretty confused by your statement about orbiting 5 times. How the hell can you orbit 5 times in 932.4−817.4=115 days, when even Eve takes 66.9 days to do it once?)

Edited by taio
Link to comment
Share on other sites

The five solar orbits of your ship is between the first double-K's, K932.4-(dbl.96) K1358.5. That's 1358.5-932.4=426.1 days, 4 Kerbin years. Anything that is not a double flyby can't be more than one orbit of the sun because LambertE.exe and FF don't use a multi-orbit Lambert algorithm.

You are correct, LambertE can't do more than 5 encounters. I get around this by taking the last two encounters and entering them as the first two encounters in a 2nd LambertE. So for instance here I would take the K1358.5-E1394.9 that end the first 5 encounters and use them as the first two encounters in a 2nd instance of LambertE.

Here's how I search for monstrosities like this.

First, the V SOI when leaving Kerbin must be at least 2750m/s to make it to Jool under the best conditions. In practice Jool will be a little further away, or out of Kerbins orbital plane, or your path won't leave Kerbin in exactly the direction of Kerbin's solar orbit, so something higher than 2750m/s would be better. 2750m/s at Kerbin's SOI is about 1950m/s from a 75x75km orbit. This means you can search for K-E-K paths using Flyby Finder and eliminate all of the ones that have a 'braking dV' of less than 1950m/s. This limits the windows in which the K-E-K-K can start, though it's still a lot of possibilities.

Second, I find the windows where you can go K-J for less than, say, V inf 3100m/s. For instance the first window departs Kerbin from about day 40 to 80.

Now I look for a good K-E-K that ends an integer multiple of Kerbin years before a good K-J. For a direct KEKKJ it seems to me that there should be 2 Kerbin years between the two K's, though I am not positive that three years won't work, I just haven't found it. So I search for a mission with the parameters of K(a)-E(B)-K©-K(c+213)-J(d). I enter the numbers into LambertE and tweak the dates and 'dbl' flyby parameter until I find something that works. It takes a long time. The Kerbin departure windows are very thin, maybe 2 or 3 days, and the Eve flyby window is even thinner, so you have to look carefully to find a good path. In the spreadsheet I set the 2nd Kerbin double flyby date to equal the first one plus 213 so I don't have to change that number constantly, but that's still 5 parameters to tweak. I often find a path where the incoming-outgoing V SOIs match but it will fail because one of the Kerbin flybys would have to be below its surface.

As for the KEKKEKKJ path I have still never actually flown it, that many flybys would be a real chore and I think the course corrections would overwhelm the start dV savings, so I never searched for another one. If you pull it off I would love to see it.

My coming-soon version of FF allows you to sort the graph by braking dV which will help at bit at identifying good start windows. (ETA about 2 weeks) Still no double flyby finder though. Making a general double flyby finder proves to be quite unwieldy, lately I'm toying wth the idea of making one that only does KEKKJ as that would be far simpler. That's many months off though.

Link to comment
Share on other sites

I'm going to give some of these a shot - one thing - how do I work out ejection angle from the LambertE spreadsheet? I assume some of the cells buried in the Lambert sheet have the needed variables to compute it, but I'm not sure just which ones. I could estimate it, but I want to work from the same data that the spreadsheet is using, just for consistency.

Edited by taio
Link to comment
Share on other sites

I'm going to give some of these a shot - one thing - how do I work out ejection angle from the LambertE spreadsheet? I assume some of the cells buried in the Lambert sheet have the needed variables to compute it, but I'm not sure just which ones. I could estimate it, but I want to work from the same data that the spreadsheet is using, just for consistency.

I don't give the ejection angle the way Alex Mun's porkchop plotter does. Here is an example of the information FF (and LamberE) gives:

Start Orbit Inclination: 3 degrees (called 'Start orbit inc' in LambertE)

Start Boost: 1502 m/s (called 'departure dV over circ' in LambertE)

Start Equatorial Z velocity: 203 m/s (called 'eq boost vZ' in LambertE)

Start Equat. Prograde velocity: 1497 m/s (called 'Eq boost prog.' in LambertE)

The guide I put on the top of the first page of this thread shows how these are used to set up your Kerbin departure boost, sheets 24 to 34 in particular. They have text but for some reason now you have to click on them to see it.

Link to comment
Share on other sites

I wasn’t able to find any of those values in LambertE, even in the Lambert sheet, except for “departure dV over circâ€Â. There is a “Boost Vzâ€Â, but since it’s not paired with a prograde eq. ÃŽâ€v it doesn’t seem like the right value.

Edited by taio
Link to comment
Share on other sites

Argh, sorry about that, I am using my development version here which is not ready to release. You're right, on the last release Boost Vz is the z speed when leaving the SOI, not the z when leaving LKO. And prograde boost and inclination are missing. You can see why that's fairly useless and got replaced with the FF data. This means I have to release a new Lambert as well. I'll have to clean it up first, this could take a week or two.

Link to comment
Share on other sites

Yup, I fired up 0.60 and those parameters I give 4 posts up are identified just as it says. You have to double-click on an entry in the table to bring up the detail box. Note that FF cannot do double flybys, though LambertE can. That is the second huge difference between them. (The first being that FF does all the searching for you while with Lambert you have to enter every planet date by hand and check the flyby heights and energies.)

Link to comment
Share on other sites

OK I'm releasing version 0.80 today. Probably the most important change is that it can now use Kerbal time (6-hour days and 426-day years) as well as Earth time. I also added several graphing options and the ability to use the Outer Planets Mod (by CaptRobau) planets.

I've put the new Dropbox links up in the OP and am adding the new instruction pages into the primer. Here is a primer for just the new features:

Javascript is disabled. View full album

The key points:

-To change the time mode (Kerbal or Earth) or the planetary system (Stock or OPM) you must clear the current search, or do it before you start the first search.

-Beware of making the 'search steps per period' too high. You can get more hits but it the search takes much longer. Remember the 4500 'flybys found' limit, there's no point in increasing search steps past the point where there are more than 4500 hits.

A vmax at SOI of about 4500m/s should get you from Kerbin to any planet in the OPM at least once per synodic period, try flight times of 600 to 8000 Kerbal-days.

-PLAD

Link to comment
Share on other sites

Just a note, I've put the latest version of Lambert in the OP right under the links for FF. This version handles up to 6 bodies, does double flybys, and includes the OPM planets. It's still not exactly user friendly and I don't recommend it for the casual user, but if you want to see how FF works the math is all in there. It doesn't allow Kerbal time inputs but does translate the output dates.

Link to comment
Share on other sites

An update note, I've just released version 0.82, which is strictly a bug fix. It gets rid of all false positives that would appear in high-energy sections of a plot, and restores some true positives that were getting filtered out before. In case you're wondering, version 0.81 was not released because it filtered too much stuff out. No changes to the operation or instructions. Now I'm on to another shot at double flybys, though this will take awhile because I haven't been playing the game enough lately, just testing algorithms!

-PLAD

Link to comment
Share on other sites

Awesome work with the OPM support. For future expansion have you thought about a way to support arbitrary systems? I believe KSPTOT used a plugin that could output a file describing all the bodies and orbits, there may be other ways.

Link to comment
Share on other sites

Awesome work with the OPM support. For future expansion have you thought about a way to support arbitrary systems? I believe KSPTOT used a plugin that could output a file describing all the bodies and orbits, there may be other ways.

Yup, I've thought about it. I admire TriggerAU's in-game adaption of AlexMun's pork-chop plotter, it just grabs the orbital elements straight from the game as it's running, so it can handle any system. So can TOT, I believe. Not FF, to add a mod system to FF I open up the mod config files and find the orbital elements and convert them to what I need for FF using Lambert.xls, then write them into FF, rather than somehow generating config files that FF would read at runtime.

But I have some reasons for wanting control of what systems FF is used for- the algorithm uses linked conics rather than patched conics, which means it assumes the planets change the direction of the ship all at one point, rather than noting where the planet enters the SOI and where it leaves it. For the stock planets this is plenty good enough because the SOI's are puny compared to the distances between the planets. But for something like flying between Jool's moons this would be too crude and there would be major errors. I also used a 5th-order approximation to determine the planet positions at a given time, rather than iterating some sort of Newtonian until it converges, and this would become inaccurate if the eccentricity of an orbit exceeds about .25. I do both these things to speed the program up, but it means I have to check every system to make sure my approximations aren't leading to bad outputs. There are also some tricky systems, like that one where Kerbin is orbiting a gas giant, that FF would be unable to deal with, since you have to leave Kerbin's SOI and the gas giant's SOI before you are in Kerbol's SOI.

I could write an app that read and checked a mod system's parameters and aborted before generating a config file if the system wasn't safe, but that would be a major project that would push everything else aside, so it's not in my plan for now.

Link to comment
Share on other sites

Any chance of a Linux port?

Sorry, no, at least not by me. I've never worked with Linux and don't know how to write for it. I can see the advantage of it though, the much higher RAM limit in 64-bit Linux must be great when you're running lots of mods. FF uses the MIT license, anybody can use what I've got to take a shot at it.

Link to comment
Share on other sites

  • 1 month later...
When will you have support for both OPM and Trans-Keptunian? I might want to do a Jool-Sarnus-Neidon-*insert whatever the Eris analog is here* mission. I would do it if I had the RAM.

I'm studying T-K now, the real outer bodies have very high eccentricities and wouldn't be right for FF, so it doesn't look good.

Link to comment
Share on other sites

  • 1 month later...

I still check this thread regularly. Lately I've been using Realism Overhaul a lot and have not worked on the stock version though. I still have the short-term plan to improve the way start orbits are defined, and a long-term plan for double flybys. But it's the old problem of splitting time between the Real World, playing the game, and writing stuff. 

  I have no plans do make a Linux version of FF since I don't have a Linux machine, and even if I had the OS it looks like there isn't a version of Delphi Pascal with full graphics support for Linux. I fear Pascal is a somewhat obsolete language so I'd have to learn another one to port FF over.  Time, time, time.

Link to comment
Share on other sites

  • 3 weeks later...

How do I use this to find an optimal flyby window for eve and then moho and plot the appropriate nodes because this is confusing because maths and I don't get how I'm supposed to read the graph or find what I want or how I'm supposed to get node info, and yes I looked at the imgur album in the OP.

Link to comment
Share on other sites

20 hours ago, smjjames said:

How do I use this to find an optimal flyby window for eve and then moho and plot the appropriate nodes because this is confusing because maths and I don't get how I'm supposed to read the graph or find what I want or how I'm supposed to get node info, and yes I looked at the imgur album in the OP.

OK, to start figure out what time it is in the game. I shall assume you use Kerbal time (426/6) and not Earth time (365/24). For instance is it Y1 D22 5:45:03?  Then compute what that is in what I call "UT", the number of days elapsed since the game started. There's a little converter in the lower right corner of the FF screen that can do the math for you.

Now use that number as the search date to search from. In the example below I start from day 3800 (roughly Y9 D400). No need to be precise, the search window will be hundreds of days wide. Start FF. Change the "Start at", "1st encounter", and "2nd encounter" planets to be Kerbin, Eve, and Moho as shown below. Now the tricky part in any search is to pick the right "Earliest Search Date" and "Search Period" to use for each planet. So I've given you good values below. In the "earliest search date" for Kerbin enter the current day in your game. (3800 in this example). In the "earliest search date" field for Eve enter the Kerbin day plus 400 days. In the ESD field for Moho enter the Kerbin day plus 450. Now enter the "search period" numbers as shown below, 500 days for Kerbin, 400 for Eve, and 700 for Moho. Change the field called "V at SOI" to 3000 as shown below. You might want to increase the "Search Steps per Period" field to 200. Leave everything else in its default state. Now hit the "begin search" button. It should search for a few seconds. When it finishes, if you see any 'hits' in the table, hit "Show Graph" to get a graphical representation of when Kerbin-Eve-Moho flybys are possible within the constraints. If you're having trouble, try entering the numbers below exactly as shown and see if you get the same search result. These are by no means the only values that will find results by the way, they are just pretty likely to find results anytime.

tK3ksuX.png

How is it going so far? What is your search start time? Once you start getting solutions it will be time to winnow them down to the best one for your plans. Is travel time more important than total dV expended? Do you have a dV limit? And what Kerbin orbit will you start from, I usually start from a 75x75km orbit but you might have a space station or some other orbit you like to use. To use all of Flyby FInder's information you are going to need a test probe that is in a circular, equatorial orbit around Kerbin, will that be a problem? If you don't want to use a test probe then FF can only tell you good times to leave from Kerbin and flyby Eve to get to Moho, but it can't help pinpoint the best start orbit and exact maneuver to use.

Link to comment
Share on other sites

The first attempt I tried to go by the graph and go by a date which looked good, but it ended up not working very well since I was coming in from the wrong place (on the outbound path rather than inbound from the suns periapsis), but in using the SlingShotter thing to look at planetary positions, I THINK there might be a chance to alter the inclination at apoapsis to meet Moho. Don't know if I have the fuel for it though.

Edit: I found a solution to get to Moho. Now I'm trying to get a Jool and then Eeloo flyby (Voyager 2). I had the app working, but when I was trying to narrow it down to the closest launch window, it stopped showing that.

Edited by smjjames
Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...