Celestia: Orbit barycenters of minor bodies given random object classes

Created on 17 Nov 2019  ·  9Comments  ·  Source: CelestiaProject/Celestia

So this is an issue I've encountered both in 1.6.1 and 1.7. If you define a barycenter for a binary (minor) planet, Celestia will randomly give this reference point an object class. For example, while defining a barycenter for a binary TNO Celestia treats it as if it had the class "moon" according to labels and orbits. This does not occur to every minor planet defnined this way and might even change after restarts, so really unpredictable.

Recently I started to define barycenters using the class "invisible" like it the case for Pluto-Charon per default, but this issue also occured when using the "ReferencePoint" definition.

bug

Most helpful comment

"Orcus-Vanth" "Sol"
{
    Class       "invisible"
    Visible     true
    Clickable   true
    OrbitFrame  { EclipticJ2000 { Center "SSB" } }
    EllipticalOrbit
    {
        Epoch       2457388.5   # 1.1.2016
        Period      247.185 # 246.0163 at epoch, plutino
            SemiMajorAxis    39.279
        Eccentricity      0.223855
        Inclination  20.5675
        AscendingNode   268.584
        ArgOfPericenter  73.020
        MeanAnomaly 174.476
    }
    }

    "Orcus:90482 Orcus:2004 DW" "Sol"
    { 
    Class       "asteroid"
    Radius      455
    Texture     "asteroid.*"
    Color       [ 0.835 0.839 0.831 ]
    BlendTexture    true

    GeomAlbedo  0.231
    LunarLambert    0.5

    BodyFrame   {    EclipticJ2000 { Center "Sol/Haumea System" }    }
    UniformRotation
    {
        Period      10.4        # high uncertainty
        Inclination 90.2        # assuming spin axis matches Vanth's orbit
        AscendingNode   50.0
    }

    OrbitFrame  { EclipticJ2000 { Center "Sol/Orcus-Vanth" } }
    EllipticalOrbit
    {
        Period         9.5393
        SemiMajorAxis   740     # assuming mass ratio Vanth:Orcus 0.09
        Eccentricity       0.007
        Inclination   90.2
        AscendingNode     50.0
        ArgOfPericenter  185.5
        MeanAnomaly     143.1
        Epoch       2454439.2807
    }
    }

    "Vanth:(90482) Orcus I Vanth:S/2005 (90482) 1" "Sol/Orcus"
    {
    Class       "moon"
    Radius      220
    Mesh        "roughsphere.cms"
    Texture     "asteroid.*"
    Color       [ 0.62 0.56 0.50 ]  # "slightly red", assuming similar color to Quaoar
    BlendTexture    true

    Albedo      0.10            # estimate
    LunarLambert    0.5

    BodyFrame   {    EclipticJ2000 { Center "Sol/Haumea System" }    }
    UniformRotation
    {
        Inclination 90.2        # assuming spin axis matches Vanth's orbit
        AscendingNode   50.0
    }

    OrbitFrame  { EclipticJ2000 { Center "Sol/Orcus-Vanth" } }      
    EllipticalOrbit
    {
        Period         9.5393
        SemiMajorAxis   8240
        Eccentricity       0.007
        Inclination   90.2
        AscendingNode     50.0
        ArgOfPericenter   5.5
        MeanAnomaly     143.1
        Epoch       2454439.2807
    }
}

All 9 comments

There is also the temperature problem with planets orbiting barycenters.

There is also the temperature problem with planets orbiting barycenters.

There is also the TempDiscrepancy parameter that can be used to correct this.

If 1.6.2 is going to have updated data (#699), this bug will need to be fixed for 1.6.2 as well, otherwise the Orcus-Vanth barycenter will be treated as if it's a moon instead of an asteroid.

@Panterstruck please provide test data for this bug.

"Orcus-Vanth" "Sol"
{
    Class       "invisible"
    Visible     true
    Clickable   true
    OrbitFrame  { EclipticJ2000 { Center "SSB" } }
    EllipticalOrbit
    {
        Epoch       2457388.5   # 1.1.2016
        Period      247.185 # 246.0163 at epoch, plutino
            SemiMajorAxis    39.279
        Eccentricity      0.223855
        Inclination  20.5675
        AscendingNode   268.584
        ArgOfPericenter  73.020
        MeanAnomaly 174.476
    }
    }

    "Orcus:90482 Orcus:2004 DW" "Sol"
    { 
    Class       "asteroid"
    Radius      455
    Texture     "asteroid.*"
    Color       [ 0.835 0.839 0.831 ]
    BlendTexture    true

    GeomAlbedo  0.231
    LunarLambert    0.5

    BodyFrame   {    EclipticJ2000 { Center "Sol/Haumea System" }    }
    UniformRotation
    {
        Period      10.4        # high uncertainty
        Inclination 90.2        # assuming spin axis matches Vanth's orbit
        AscendingNode   50.0
    }

    OrbitFrame  { EclipticJ2000 { Center "Sol/Orcus-Vanth" } }
    EllipticalOrbit
    {
        Period         9.5393
        SemiMajorAxis   740     # assuming mass ratio Vanth:Orcus 0.09
        Eccentricity       0.007
        Inclination   90.2
        AscendingNode     50.0
        ArgOfPericenter  185.5
        MeanAnomaly     143.1
        Epoch       2454439.2807
    }
    }

    "Vanth:(90482) Orcus I Vanth:S/2005 (90482) 1" "Sol/Orcus"
    {
    Class       "moon"
    Radius      220
    Mesh        "roughsphere.cms"
    Texture     "asteroid.*"
    Color       [ 0.62 0.56 0.50 ]  # "slightly red", assuming similar color to Quaoar
    BlendTexture    true

    Albedo      0.10            # estimate
    LunarLambert    0.5

    BodyFrame   {    EclipticJ2000 { Center "Sol/Haumea System" }    }
    UniformRotation
    {
        Inclination 90.2        # assuming spin axis matches Vanth's orbit
        AscendingNode   50.0
    }

    OrbitFrame  { EclipticJ2000 { Center "Sol/Orcus-Vanth" } }      
    EllipticalOrbit
    {
        Period         9.5393
        SemiMajorAxis   8240
        Eccentricity       0.007
        Inclination   90.2
        AscendingNode     50.0
        ArgOfPericenter   5.5
        MeanAnomaly     143.1
        Epoch       2454439.2807
    }
}

Yeah this will do. It's really hard to show off in screenshots as well as it require you chaning the visibilty of object class specific orbits. And it is not entirely reproducable, one launch it might work as intended, other times the barycenter might count as a moon.

I am wondering why there is this bit of code mentioning the "Haumea System":

BodyFrame   {    EclipticJ2000 { Center "Sol/Haumea System" }    }

That's odd. I just copied the code from Project Echoes, but I've seen the same issue with code for Orcus-Vanth that didn't reference Haumea.

That's me copying the Orcus-Vanth system from the Haumea system and going from there. But yeah, it happens with literally any minor planet that uses a barycenter. When I repllied earlier I wanted to submit a screenshot from the Manwë-Thorondor system which I checked, does not have this faulty reference, but dismissed it due to screenshots being kinda unhelpfull without 3rd party video capture.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

RacerBG picture RacerBG  ·  9Comments

shujaatak picture shujaatak  ·  9Comments

drzraf picture drzraf  ·  20Comments

munix9 picture munix9  ·  28Comments

CelestiaProject picture CelestiaProject  ·  8Comments