• Welcome to the new COTI server. We've moved the Citizens to a new server. Please let us know in the COTI Website issue forum if you find any problems.

Acceleration times

A positive example would be an easy proof. It wouldn't find the exact cut-off.

Not that I believe in brute force as an answer to this, and there are still caveats, but I tried the entire range between the end of the 0.5g band and end of the 0.25g band with initial velocities between 4000 and 12000 m/s, and none of them resulted in a single orbit:


The caveat here is I started all initial velocities +y and position +x (the motion was initially perpendicular to what the force of gravity would have been at the start point).

Please post when you do have a solution, I want to try it out.
 
The caveat here is I started all initial velocities +y and position +x (the motion was initially perpendicular to what the force of gravity would have been at the start point).
That will obviously not work?

We need a velocity vector that when added to the gravity vector does not change length, hence they can't be perpendicular. In my sketch above the angle is necessarily > 90°.

xZlKrD9.png



Please post when you do have a solution, I want to try it out.

Not tonight. I'll try to look at it tomorrow.
 
Added to the brute force, varying the angle +/- 10º. Basically the same result:

If I interpret that correctly some initial vectors lead to escaping the orbit, and some lead to collapsing orbits.

Have you refined the steps around the "saddle" point? It's not chaotic, right?
 
Even the question of "which orbit" is not obvious, I think the naive approach would be to compute kepler elements based on the position and velocity (state vectors) at the time that the player says the thrust stops, but then do you use the gravity band-based mass for the world or what the mass really would be?
You can't use a gravity band thing either, honestly. Again, it's too coarse.

But in the end, you can have an orbit at any level you like, we just place the ship "in orbit" at that level, and, if we cared, we could calculate the orbital velocity.

But what we can't do is even give a perfect orbit with a perfect velocity, we can't replicate it using the mechanics of the game. The steps are too severe and grainy to facilitate it, save for some dumb luck orbit where it all works.

I think we can find AN orbit with the LBB2 system, but it won't be the correct orbit.

This may well be impossible give the constraints for any orbit.


Have you refined the steps around the "saddle" point? It's not chaotic, right?

This issue is that though such a saddle does exist, when you're building your orbit out of Legos, you'll "never" be able to find that Goldilocks moment, it'll always be too hot or too cold and never just right because the Legos just aren't thin enough.
 
If I interpret that correctly some initial vectors lead to escaping the orbit, and some lead to collapsing orbits.

Have you refined the steps around the "saddle" point? It's not chaotic, right?

Yes, I'm using the non-linear optimizer. I don't explicitly do it. I tried to set up an algebraic solution for an initial vector based on your suggestion, mathematica produces the empty set:



I'm trying Reduce (as suggested) and combinations of FindGeometricConjecture[] and FindEquationalProof[] as well, but it's taking a little time. I think I know why there isn't a solution, but I am going to wait to see your solution, I think.
 
If I interpret that correctly some initial vectors lead to escaping the orbit, and some lead to collapsing orbits.

The escapes occur when the midpoint of the current turn lands in a different gravity band (or outside any of them). This is very destabilizing - if the midpoint is outside any band it will escape, if it moves from a semi-stable orbit in one band to a lower band energy changes discontinuously and it destabilizes.

I am also trying to treat this as a variant of Lambert's Problem but with quantized gravity and timesteps and see if I can get valid initial conditions out of that (with NDSolve). I'm not sure if the solver is approaching the problem the way I want it to though.
 
We need a velocity vector that when added to the gravity vector does not change length, hence they can't be perpendicular. In my sketch above the angle is necessarily > 90°.

So you are trying to solve the equation ||v|| == ||v + a||. (v and a are vectors) I don't think you're going to find a real solution for a, are you?
 
So you are trying to solve the equation ||v|| == ||v + a||. (v and a are vectors) I don't think you're going to find a real solution for a, are you?

Of course I expect to. Think of an equilateral triangle:
296px-Triangle.Equilateral.svg.png


The sides are vectors.

Side 1 + Side 2 = Side 3.

| Side 1 + Side 2 | = | Side 1 ] = | Side 2 ] = | Side 3 ]
 
Last edited:
This issue is that though such a saddle does exist, when you're building your orbit out of Legos, you'll "never" be able to find that Goldilocks moment, it'll always be too hot or too cold and never just right because the Legos just aren't thin enough.

Possibly, but only time (and gravity) is quantised, the velocity vector is not. That gives us a good chance.
 
Of course I expect to. Think of an equilateral triangle:


The sides are vectors.

Side 1 + Side 2 = Side 3.

| Side 1 + Side 2 | = | Side 3 ]

There is still the problem that there are really two constraints: the velocity must stay the same and the distance from the world must stay the same, for a circular orbit. In other words, said more classically, specific energy must remain the same - specific kinetic energy added to specific gravitational potential energy must be the same. Kinetic energy is just like it is in the real world, but you must find gravitational potential energy by integrating the piecewise function for the gravity bands. If you keep the same velocity vector magnitude but change the distance from the world, specific energy has changed. Some change is possible and a non-circular orbit will result (from the initial ideal orbit), something like a perturbing function for real orbits.

I have not yet been able to come up with a solution that meets the constraints, algebraically or geometrically or brute force (and I've tried more than 125 million combinations now), I'm going to wait for your solution - I am presuming a world density like earth (5515 kg/m³ and world size 10) and use the midpoint between 0.25 and 0.5g, but I can set up anything pretty easily, but you'll probably want to use the largest world possible.
 
Daft question but have you considered working backwards?

Start with the vector diagram for a ship in a stable orbit and then move the ship 'backwards in time' to see how the vectors must have played out for a ship moving from infinity - or rather from beyond the gravity threshold.
 
Daft question but have you considered working backwards?

Start with the vector diagram for a ship in a stable orbit and then move the ship 'backwards in time' to see how the vectors must have played out for a ship moving from infinity - or rather from beyond the gravity threshold.

Yes, I've tried this, but even this is more complicated than it would seem. "Stable orbit" if real physics were applied? That doesn't work because a given set of state vectors from a stable orbit for a real-world object do not produce a stable orbit in traveller, so you need to first know what a stable orbit in traveller looks like. I don't think there is one for world sizes at least up to A. Specific energy varies wildly from turn to turn which is the equivalent of a random thrust being applied from turn to turn or some other perturbing force.

So, in short: yes, I can work backward from what would be a stable orbit in the real world but with traveller rules and come up with something, but that would-be stable orbit isn't actually a stable or even pseudostable orbit. Once I know what a pseudostable orbit could be in Traveller I can work from there. AnotherDilbert is working in that part.
 
Possibly, but only time (and gravity) is quantised, the velocity vector is not. That gives us a good chance.

It took a little time, but I think I now have the geometry you were proposing:


nb is the new endpoint from a where b would have been the non-gravity-incluenced endpoint. I run it through the turn advance:



For what it is worth, I did verify that position at start of turn 2 is exactly the same length as it would have been without gravity:



The problem is, the new velocity vector has a different angle to gravity than the old one did, so the subsequent turn will no longer have a vector of the same length. I do think a further constraint of | nb-c | = | b-c| is needed. How is your solution coming?
 
It took a little time, but I think I now have the geometry you were proposing:

The problem is, the new velocity vector has a different angle to gravity than the old one did, so the subsequent turn will no longer have a vector of the same length. I do think a further constraint of | nb-c | = | b-c| is needed. How is your solution coming?

Sorry, it was the first perfect sunny spring day here. I haven't looked at any maths...
 
For what it is worth, I did verify that position at start of turn 2 is exactly the same length as it would have been without gravity:

The problem is, the new velocity vector has a different angle to gravity than the old one did, so the subsequent turn will no longer have a vector of the same length.

As you pointed out it has to have the same altitude and angle against the radius, not just the same length, so it is just a bit on the way.

In my sketch I maintained the angle against the radius as a constraint, but assumed, but did not consider, the altitude.
 
As you pointed out it has to have the same altitude and angle against the radius, not just the same length, so it is just a bit on the way.

In my sketch I maintained the angle against the radius as a constraint, but assumed, but did not consider, the altitude.

Yes, angle against the radius staying constant alone does not work, and I don't think there is a constant altitude solution with the gravity bands the way they are. Hopefully, the weather turns bad there so I can see your solution.

 
Back
Top