Berechnung synodischer Perioden an einem bestimmten Punkt in der Umlaufbahn

Die Berechnung der regulären Synodenperiode zweier umlaufender Körper ist ziemlich einfach, aber was wäre, wenn ich wissen wollte, wann sie sich an einer bestimmten Position treffen würden? Zum Beispiel, wenn sie sich eine Periapse teilen. (Mit "gleicher Position" meine ich, dass sich die beiden umlaufenden Objekte und der zentrale Körper auf derselben Linie befinden.)
Ich weiß, dass dies nur gilt, wenn Sie die Periode eines der Körper als Bruchteil des anderen ausdrücken können, also eine 1 und ein Quadrat (2) Orbit würde niemals synchronisieren.
Aber was wäre, wenn ich mich für eine akzeptable Marge entschieden hätte? (wie 10 Grad)

Derzeit erzwinge ich dies brutal.

Meine Frage ist: Ist es eine Möglichkeit, das nächste Mal zu berechnen, wann sich zwei Körper angesichts ihrer Umlaufzeit und eines akzeptablen Fehlers am selben Ort treffen würden?

Die Objekte haben keine merkliche Wirkung aufeinander oder auf den zentralen Körper. Beschränken Sie sich bei Bedarf auf kreisförmig oder koplanar.

Können Sie "die gleiche Position" näher erläutern? Meinen Sie die gleiche Winkelposition (wahre Anomalie plus Argument der Periapsis?).
@Brian Lynch Vielen Dank für den Kommentar. Ja, in der Frage klargestellt.
Sind die Bahnen kreisförmig? Koplanar? Angenommen, beide sind sehr klein im Vergleich zum zentralen Körper mit vernachlässigbarer Auswirkung aufeinander, um eine einfache Lösung zu haben?
@Mark Adler, Ja, ihre Wirkung aufeinander und auf den Zentralkörper ist vernachlässigbar. Kreisförmig und koplanar müssen sie nicht sein, aber eine auf eine oder beide beschränkte Lösung wäre ebenfalls hilfreich. Fühlen Sie sich frei, eine Teilantwort zu geben. Meine aktuelle Arbeit ist die Verwendung von Zeitinkrementen.
@barrycarter Ja, das scheint verwandt zu sein. Wäre interessant, wenn es eine Antwort gibt. Vielleicht kann ich meinen Code optimieren, um Ausrichtungen von drei oder mehr Planeten zu berücksichtigen. Ich bin mir jedoch nicht sicher, was sie über sprachspezifische Tools denken.
Nur als Anmerkung, ich arbeite selbst an einer Lösung dafür: github.com/barrycarter/bcapps/blob/master/MATHEMATICA/… die dieses schicke animierte GIF enthalten wird: github.com/barrycarter/bcapps/blob /master/MATHEMATICA/…

Antworten (1)

Das hat letztendlich mein Problem gelöst. Diese JavaScript-Funktion nimmt die Parameter: radiusRatio, den Radius des äußersten Objekts dividiert durch den innersten. innerAnomaly, die wahre Anomalie der innersten Objekte von der Referenzrichtung, das gleiche gilt für outerAnomaly, errorMarginist der maximale Winkel zwischen einem der beiden Radiusvektoren oder der Referenzrichtung und limitgibt an, wie viele der innersten Objekte umkreisen, für die simuliert werden soll.

innerAnomalyBeachten Sie, dass das für , outerAnomalyund verwendete Winkelmaß errorMarginin Bruchteilen einer Umlaufbahn angegeben ist, nicht in Grad oder Bogenmaß.

sameLine = function (radiusRatio,innerAnomaly,outerAnomaly,errorMargin,limit){
    results = [];
    newMargin = errorMargin;
    periodRatio = Math.pow(radiusRatio,3/2);
    for (i = 1; i < limit; i++){
        anomaly = (outerAnomaly + (i - innerAnomaly)/periodRatio) % 1;
        if (anomaly > 1 - anomaly){
            anomaly = 1 - anomaly;
        };
        if (anomaly <= newMargin){
            results.push([i - innerAnomaly,anomaly]);
            newMargin = anomaly;
        };
    };
    return results;
};

Es gibt ein Array aus, das Sub-Arrays mit den Begegnungsdaten im Format von 1 Anzahl von Umlaufbahnen enthält, die das innerste Objekt ausgeführt hat, und 2, was die Fehlerspanne war. Der nächste Eintrag ist das nächste Mal, wenn der Fehler kleiner ist.

Sie ist natürlich auf koplanare, kreisförmige Umlaufbahnen beschränkt, und die Masse der beiden umlaufenden Objekte ist vernachlässigbar.

Ich habe eine ausführlichere Erklärung für ein verwandtes Problem unter https://physics.stackexchange.com/a/232918/102747