MechJeb2

MechJeb2

4M Downloads

Intermediate altitude of Stock-style Gravity Turn doesn't work probably

morphelianus opened this issue ยท 6 comments

commented

MechJeb Version

2.10.0.0

KSP Version
Stock 1.10.0.2917 de-de
Making History 1.10.0
Breaking Ground 1.5.0

Description

It seems that the intermediate altitude of the Stock-style GravityTurn profile is not work as I would aspect it to. According to the documentation the ship's altitude will be raised to the final orbit altidude after reaching the intermediate altitude. I did serveral tests and captured a video as setting the intermediate altitude below the targeted orbit altitude leads to a lost of the space ship. May I don't get the point of this ascent profil and its paramters wrong? Don't know, it just doesn't feel correct.

Replication Case

https://youtu.be/d_AuerCo2yE
My test were done with an intermediate altitude of 45, 60, 80 and 90 km and an orbit altitude of 80 km.

KSP.log

KSP.log
KSP_x64.gc.log

commented

Video is private. Most likely your gravity turn is too aggressive, you need to manually adjust the pitch program. All it does is executes the initial pitch over you tell it to, then it flies zero AoA until the intermediate altitude is raised. If your pitch program is too aggressive it will burn up. It is a very simple gravity turner, and that is not a bug, you're going to have to be responsible for that.

commented

If the intermediate altitude is too low it also will burn you up by winding up at near orbital speeds too low in the atmosphere and the heat flux will explode the rocket. There's no useful formula to fix that, since as the target altitude is raise, the velocity you're traveling at the periapsis of the transfer orbit increases, and therefore the intermediate altitude will increase. It also does none of the pitching up at the intermediate altitude that the Gravity Turn mod does (and no work will be done to fix that).

Generally these days I'm impatient and I set the intermediate altitude to the target altitude most of the time.

commented

No, video is listed. With the link it should be possible to access it. I try to answer both of your comments.

What is AoA? The WIKI tells nothing about it. It's still an open ToDo.
And how do I adjust the pitch programm?
I agree that the intermediate altitude is maybe to low in the first and second example. But the heat didn't cause damage to my rocket. In fact the periapsis will never be raised to the orbit altitude.
Gravity Turn mod tells nothing to me. And honestly, I don't want to install more mods than necessary or that provide nearly the same functionality. Okay, that might isn't consistant in all terms with MechJeb and the Engineer Redux mod. But who is perfect.
Furthermore, I don't believe that my gravity turn is to aggressive as everything is fine until I reached the intermediate altitude whenever I set it above the atmosphere.

I captured another video to indicate the issue more precisely.
https://youtu.be/aBp9BAC9ZhM
orbit altitude: 80km
intermediate altitude: 75
turn start altitude: 1500 meter
turn start velocity: 150m/s
turn start pitch: 20

The issue is, that after reaching the intermediate altitude the second burn raises the apoapsis to the set orbit altitude but then it shuts down the engine leaving the rocket with a periapsis below ground or still within the atmosphere. MechJeb then calculates a nav point but this one will never be reached as it will only be executed the next time the rocket reaches the apoapsis.

In case this is nothing that can be fixed by a formular or by letting Kerbal calculate a nav point may the WIKI should be enhanced with additional information, e.g. what is a sufficient intermediate altitude? Maybe 20% below orbit altitude and far above the atmosphere? What is the intermediate altitude for? I thought it can be used as a kind of Hohmann maneuver. Or the default values should be changed to safer ones. I don't know if it is feasible to calculate and suggest a Hold AP time?

Nevertheless, I hope you find a solutions as this is just rocket science, isn't it?

commented

Just another test
Orbit altitude: 110km
Intermediate altitude: 100
Same behavior. It seems an intermediate altitude too close to or too far away from the orbit altitude causes the issue. But what is the sweet spot? Any suggestions?

commented

You need a more aggressive pitch program. Your insertion burn to orbit needs to take less time and less delta V and the "transfer orbit" needs to be more gradual at the apoapsis. You're falling back down before you've managed to circularize at all.

Bring the turn start altitude down a lot, bring the turn start velocity down a lot.

And "just rocket science" looks like this:

https://www.researchgate.net/publication/268557800_A_Versatile_Powered_Guidance_Algorithm

So the solution to getting closer to a single button push is writing a proper finite burn executor, but that takes 1,000s of hours of research and debugging code and isn't possible using only college-level undergrad calculus.

commented

This is working as designed.