# GPS Drift, Rocket Landing Predictor and visualizer Spreadsheet

### Help Support The Rocketry Forum:

#### dvdsnyd

##### Well-Known Member

Out of a desire to understand a little more where my rockets could potentially land leading up to the launch, and the morning of launch. As well as predicting where anomalous flights may go(main at apogee failures anyone?) Especially after having treed a couple rockets in my close flying circle, I set out to come up with a way to hopefully predict where a rocket may land - GPS Drift was born (maybe someone can help come up with a more clever name). It is loosely patterned after high altitude balloon planning and prediction software. It's much less polished, and requires a bit of user input and manual work. I'd love to be able to automatically download forecasts like that software does, but that isn't in my toolkit.

The main user inputs are launch site latitude and longitude, apogee altitude and main deploy altitude for a dual deploy, as well as the descent rates under drogue and main parachutes.
The user then uses the Windy app/website to gather the windspeed and direction at each altitude up to your apogee. This takes a little effort, but isn't so bad once you get the hang of it. For a rocket flying to 5500 feet, it requires 7 points.
Then there's a few more clicks and utilization of a website called GPS Visualizer, which takes our data and puts it into a KML file for later viewing. This is how I gathered the picture above.
The estimated landing site GPS coordinates are also provided and highlighted (light purple) in the sheet.

*Disclaimer, I haven't been able to put this software through its paces yet. It's just now getting warm enough in MN to hopefully start flying again in the next month or so. Began development in December of 2020.

I just wanted to get it out in the wild, and see what others think, as well as their experiences. If you use it, was the prediction even close? Maybe there are ways to improve it?
I'm not looking to develop a full launch simulation. However, a predicted landing location in my mind is one of the biggest things simulations could provide. Especially if they are based on actual wind forecasts.

The help sheet provides a pretty thorough walkthrough of what is needed to perform an analysis.
Please post your feedback, questions and comments here. Would love to hear what you think, and if there any ways to make it better!
Thanks,
Dave

#### Attachments

• 2.8 MB Views: 17

#### Buckeye

##### Well-Known Member
TRF Supporter
Wow. I was working on a near identical sheet just last week! I was doing the same thing - picking off points from Windy. I decided to scrub a high-altitude launch because of the predicted landing area. Here is a snapshot of my work in progress. Now I can abandon my sheet and use yours! Great minds think alike

Well done. I like your idea to create a kml. I was just manually using the ruler in Earth.

#### Buckeye

##### Well-Known Member
TRF Supporter
It would be really cool to tap into a Windy API (if one exists) to retrieve the wind levels.

#### Buckeye

##### Well-Known Member
TRF Supporter
Also, for big flights, the descent rates will vary as air density varies with altitude/temperature/pressure. I ignored this fact in my sheet, but it can be significant, especially for a drogue. A standard atmosphere model or weather balloon soundings can easily be incorporated into the calculations.

#### Buckeye

##### Well-Known Member
TRF Supporter
Good point about the assumed straight boost. One can predict weathercock with RockSim or similar, then use that position as the starting lat/lon in your worksheet.

#### dvdsnyd

##### Well-Known Member
Hi Buckeye,
Thanks! Great minds do think alike!
That's awesome you were working on this same problem as well! Our sheets do look similar.
I like how your sheet has a spot to put the forecast time and date. Think I'm going to also add a Rocket name/project name somewhere too.
Have you had a chance to try out a sim with my sheet? Did everything make sense? Was it close to what your sheet predicts?
I'd love any feedback!

I would love to connect with a Windy API, or any other forecast API, it's just out of my abilities.
At some point, I'd like to add in a Std atmosphere model and take account for the air density change.
Right now, I would just like to see how well the prediction is currently. Hoping it gives people a place to start with an RF finder, screamer, or even a GPS system that they lost the signal for, and the rocket was out of sight. It's so easy to not realize that the upper level winds are dragging your rocket in a totally different direction than the ground level winds.

Dave

#### Buckeye

##### Well-Known Member
TRF Supporter
I am excited about it, as my successive posts suggest, LOL!

Yes, Windy has an API, to the tune of 900 Euro per year. Never mind.

Yes, I compared your sheet to mine, and my result is a bit farther away than yours. I dug into your code and noticed that you use the wind speed at the lowest level of the interval for the entire interval. For example, from 5000 ft (16 mph) to 3000 ft (12 mph) you calculate the drift distance over this entire interval using only the 12 mph value. (I think I am reading that correctly.). I take the average (14 mph) of that span, so my drift distance is greater. The bearing should also be averaged, if the wind changes direction from one level to the next.

There may be some inconsistency in altitude AGL and altitude MSL between your sheet, what GPS Visualizer spits out, and how it displays it in Earth. Not a big deal in Minnesota, but becomes important at high elevation launch sites.

This is very cool, glad you put this together. I learned more about Windy and GPS calculations in the process! I will likely spend some more time on it and give it a real test at my next launch.

#### dvdsnyd

##### Well-Known Member
Ahh, glad you were able to take a closer look!
Good point about averaging, especially if there is a shift from one altitude to another. I'll work on that fix.
the MSL vs AGL problem always seems to rear it's head.

I believe Windy takes into account the local altitude.
Aren't most sims, like Rocksim/Open Rocket predicting altitude AGL?
Or maybe I'm missing something?

Definitely some stuff to think about.
Dave

#### Buckeye

##### Well-Known Member
TRF Supporter
Yes, sims are AGL. I am not exactly sure what Windy is doing with elevation and pressure levels (ie, 700 hPa). I don't fully understand those aviation forecasts, so I need to brush up.

OK, my bad. I entered 16000 ft as my apogee, and Earth displays that altitude (in the elevation profile) as 16600 ft because it is using MSL. (my launch site is at 600 ft).

TRF Supporter

#### dvdsnyd

##### Well-Known Member
I couldn't edit my original post, so I just uploaded the latest iteration of the sheet here.
It is now averaging the wind speed and direction within the current region. It averages even if the the wind speeds or directions are the same, since the average will just be the same - was just easier to implement this way, rather than adding more logic.

I also blanked out the 45000 ft rocket events, as there is no data above this point to calculate new lat/long.
Therefore the max usable apogee is 45000 ft.

That link is actually almost more confusing :-(

So...Low level winds are terrain following, so closer to AGL...where upper level winds are related to the actual pressure...
How would one deal with that in the sim?
Would it make sense to have an input for launch site elevation and go from there?
Dave

#### Attachments

• 2.8 MB Views: 10

#### Buckeye

##### Well-Known Member
TRF Supporter
Thanks for that update.

Yeah, I haven't gotten my head around the isobars of pressure. The Windy elevation estimates are MSL, though, so that needs to be taken into account.

#### dvdsnyd

##### Well-Known Member
Did another update to the sheet.
Revamped a lot of the logic to make it easier to input data. User no longer needs to manually enter data into the Rocket Events column.
Instead, data is entered to the left, and it is automatically transferred in via formulas.

I attempted to add in functionality for MSL/AGL variances, but I'm not sure I did it correctly. As I understand, MSL = Altitude(AGL) + Launch site Elevation.
I'm mostly unsure because in North Branch, the elevation is around 830 ft. Well Windy has the surface windspeeds at this elevation as 0ft.
Take a look, and let me know what you think.
Dave

#### Attachments

• 2.8 MB Views: 10

#### Buckeye

##### Well-Known Member
TRF Supporter
The new logic looks good, as does the averaging.

I think something is now messed up with the Populate Output function. It is adding another column of longitude to the past area.

#### dvdsnyd

##### Well-Known Member
The new logic looks good, as does the averaging.

I think something is now messed up with the Populate Output function. It is adding another column of longitude to the past area.
Yup :-( Apologies, I never checked on the output after making those changes.
Everything should be working again.

One thing to note, launch site elevations 1600ft and lower are supported. I still need to work on how to support higher elevations.

I posted on the Windy community forums, and got some great help there. Pretty much verified what I'm thinking
Windy Forum Question

Another way to do it may be to use the winds and temperature aloft sounding data.
Wiki article on sounding data

This site was working earlier, you could pick the closest area and get the sounding data.

Sounding Data

Here's another site that reports sounding data
Airsports

#### Attachments

• 2.8 MB Views: 7
Last edited:

#### JimJarvis50

##### Well-Known Member
This is a really good idea. I look forward to using the program and to everyone's comments here. First chance that I will have to try this out will be in about a month.

I have this stabilized rocket I've been flying where I can fly it at a specified bearing and tilt. It's a long story, but one application is to fly it to a spot and then have it drift back to the pad. Because I know generally where apogee will be, I also use the same general process as GPS Drift to figure out where the landing will be. Sometimes I get close and sometimes I don't. I've tried this maybe 8 times to date, and a few of my efforts are attached.

I use Windy to do the estimates, and I typically use the European, GFS and NAM models and then average the results as best I can. I have noted that the model results can be quite different, even within a short time from the launch. It's very annoying, but I find it hard to ignore multiple model runs even if they are different, so I look at each of them separately or as an average. Another thing that I find annoying is the gap between 6,400 and 10,000 feet because a lot happens in that range. Sigh. Ventusky fills in a gap or two, and I look at the models there as well. The last thing that I find annoying is that the models are often wrong, missing a key layer in the atmosphere. Twice, I flew at the Hearne Airport, thinking I was smart enough to avoid the runway. Landed on it both times.

Subscribed!

Jim

#### Attachments

• 184.4 KB Views: 8
• 170.7 KB Views: 8
• 193.8 KB Views: 8
• 111.8 KB Views: 8

#### dvdsnyd

##### Well-Known Member
That's really cool, Jim, Thanks for Sharing!
I look forward to seeing your results!
There's definitely a ton of variables at play! Local land features play a huge role in the ground level winds that the forecast models aren't able to predict.
One thing that is interesting, within Windy, if you right click on your location, down at the bottom of the window that pops open is an item called "Sounding" This looks to provide more layers of wind. You can click and drag anywhere within the window and select any given altitude.

#### dvdsnyd

##### Well-Known Member
Jeesh!
It always amazes me how many little errors you realize after posting something.
I goofed up and had the label for the main as drogue.
Not a big deal, if you already downloaded the old file and want to quickly fix it without downloading the new one, simply click on cell Q5, replace the existing formula with the following: =IF(F5=$B$13,"Main","")
Then drag that formula down to Q18 so it populates all the cells from Q5 to Q18.
Otherwise, the version attached here should be good to go
Sorry for all the silly little errors.

Thanks!
Dave

#### Attachments

• 2.8 MB Views: 10

#### Buckeye

##### Well-Known Member
TRF Supporter
I use the University of Wyoming sounding data a lot, especially to correct baro altimeters from a Standard Atmosphere Model to actual nearby measurements. Looks like the elevation slider bar in Windy is equating pressure to elevation from the Standard Atmosphere model. So, yeah, we can replace that with sounding data from the past. Doesn't help with future predictions, obviously. Still need to rely on Windy's forecast models.

How did you decide to replace 0 and 330 feet with your launch site AMSL, but keep 2000 ft and above as is?

EDIT: oh, 0 and 330 are below your launch site elevation.

#### dvdsnyd

##### Well-Known Member
I use the University of Wyoming sounding data a lot, especially to correct baro altimeters from a Standard Atmosphere Model to actual nearby measurements. Looks like the elevation slider bar in Windy is equating pressure to elevation from the Standard Atmosphere model. So, yeah, we can replace that with sounding data from the past. Doesn't help with future predictions, obviously. Still need to rely on Windy's forecast models.
Right, The Airsports link I provided above looks to have 24 hour forecasts, but it would be nice to have a little longer lead than that.

How did you decide to replace 0 and 330 feet with your launch site AMSL, but keep 2000 ft and above as is?

EDIT: oh, 0 and 330 are below your launch site elevation.
Hopefully I can explain this sufficiently
The surface level or zero level wind data is at the model altitude if you right click at a location and select sounding data. This is usually several feet above the ground level elevation, which is all still in msl.
The 330 ft level is 330 ft above the previous, which for my North Branch site is about 1200 ft msl.
The 2000ft and above wind readings are all on isobars.
I did it to keep everything consistent and in msl readings.

It's for this reason why I have the limit elevation limit of 1600 ft.
1600ft + 330 ft is just under 2000 ft.
If you go to the Norther Colorado launch site, it's at an elevation of 5500 ft. If you right click and find the sounding data, the isobars at 2000,3000 and 5000ft don't exist - they run into the ground.

I'm not quite sure how to automate the population of the altitudes for at an elevation of 5500ft.

The guys over at the Windy community helped me come to all of this, see the pic below, and for more clear explanation and subsequent explanation, the follow this link -
Also below is a pic from the Airsports.net site for Denver, CO, showing that there isn't data at the lower isobar levels.

Hopefully this helps,
Dave

#### Buckeye

##### Well-Known Member
TRF Supporter
The right click soundings allow you to scroll through altitude with the cursor, starting at the location's model altitude. Looks like some kind of surface simulation is used from the surface to the first available isobar. From there, the Standard Atmosphere model takes over.

So, we don't need to use the Windy slider bar with defined levels on the right hand side. The user can pick off as many elevation/speed/bearing points from the sounding chart and enter them into your spreadsheet. No limitations that you need to hard code.

As for the Northern Colorado site, I was there a couple years ago. Awesome place!!!! For a launch site like that, I wouldn't even bother with drift calculations. Just let'r rip and go find it with the GPS without worry! 99% of the time it should be on the ground and not in a hazzard.

#### dvdsnyd

##### Well-Known Member
Hi Buckeye,
I think you are right about the surface simulation and isobars.

You may be onto something with the Sounding window and foregoing the slider bar on the main screen. I was really trying to make it as easy for the user as possible, but, adding the extra step of entering the altitude may actually make it simpler. It may provide a better simulation too, since the user can have more points between apogee and landing.
This is essentially already supported in the current rev. Simply change the altitude in column G to whatever is displayed in the sounding report at each of the desired altitude levels. The rocket events column will auto populate as usual.

Thanks,
Dave

#### Buckeye

##### Well-Known Member
TRF Supporter
Dave,

I gave the sheet a try with data from the sounding window. Working good. I think a couple adjustments are now needed:

1. Since we are now using MSL elevations, "altitude mode" in GPS Visualizer should be "absolute."

2. The "Main" altitude in the output area seems to be forced to the 2nd altitude (cell G17) instead of the main rocket event in column F.

#### dvdsnyd

##### Well-Known Member
Thanks Buckeye!

You are absolutely right about the MSL elevations and GPS Visualizer - I changed the help sheet to reflect these changes.
-Another change for GPS Visualizer, is saved the default settings link. So when it's clicked in the sheet, it should always populate the settings needed.

Nice catch on the main altitude output. I fixed this.

Because we are dealing with all MSL data and are no longer relating everything from the ground in the GPS viewer settings, the blue estimated circle doesn't plot correctly.
One way around that is to plot shadows(default GPS Viewer option). This has advantages because it shows the ground track of the flight. It also brings the shadow of the estimated landing ring. It's not blue, but will probably be enough for most users.
You can go into the settings of the tracks and change the color of the shadow track for the radius, or uncheck the shadow radius and clamp the blue one to ground under properties for that clack accessed by right clicking the track. (More instruction in the help sheet)

Latest Rev attached

#### Attachments

• 3.6 MB Views: 4