Page 1 of 1

de405.bsp keeps crashing Celestia (**CLOSED**)

Posted: 21.09.2022, 13:55
by EarthMoon
I have a big problem:
The de405.bsp Spice Kernel keeps crashing Celestia.

Source of de405.bsp:
ftp://ssd.jpl.nasa.gov/pub/eph/planets/bsp/de405.bsp

When Celestia's loadings are done and it should show up, it crashes.

SS1-Freeze.png

SS2-Crash.png


de405.ssc:

Code: Select all

Modify "Mercury" "Sol"
{
    SpiceOrbit
    {
        Kernel "de405.bsp"
        Target "199"
        Origin "SUN"
        BoundingRadius 1e10
    }
}

Modify "Venus" "Sol"
{
    SpiceOrbit
    {
        Target "299"
        Origin "SUN"
        BoundingRadius 1e10
    }
}

Modify "Earth" "Sol"
{
    SpiceOrbit
    {
        Target "399"
        Origin "SUN"
        BoundingRadius 1e10
    }
}

Modify "Moon" "Sol/Earth"
{
    SpiceOrbit
    {
        Target "301"
        Origin "399"
        BoundingRadius 1e10
    }
    OrbitFrame
    {
        EclipticJ2000 { Center "Sol/Earth" }
    }
}

Modify "Mars" "Sol"
{
    SpiceOrbit
    {
        Target "499"
        Origin "SUN"
        BoundingRadius 1e10
    }
}

Modify "Jupiter" "Sol"
{
    SpiceOrbit
    {
        Target "599"
        Origin "SUN"
        BoundingRadius 1e10
    }
}

Modify "Saturn" "Sol"
{
    SpiceOrbit
    {
        Target "699"
        Origin "SUN"
        BoundingRadius 1e10
    }
}

Modify "Uranus" "Sol"
{
    SpiceOrbit
    {
        Target "799"
        Origin "SUN"
        BoundingRadius 1e10
    }
}

Modify "Neptune" "Sol"
{
    SpiceOrbit
    {
        Target "899"
        Origin "SUN"
        BoundingRadius 1e10
    }
}


OS: Windows 11
Graphics: NVIDIA Quadro NVS 450
RAM: 8GB
DirectX: DirectX 12
Celestia: 1.6.1

Posted: 22.09.2022, 03:01
by John Van Vliet
for starters the 405 bsp is from 2000 , it is 22 years old and very out of date

second from the output of "brief "

Code: Select all

(isis) john@localhost:~> brief -c de405.bsp
 
BRIEF -- Version 4.0.0, September 8, 2010 -- Toolkit Version N0066
 
 
Summary for: de405.bsp
 
Bodies: MERCURY BARYCENTER (1) w.r.t. SOLAR SYSTEM BARYCENTER (0)
        VENUS BARYCENTER (2) w.r.t. SOLAR SYSTEM BARYCENTER (0)
        EARTH BARYCENTER (3) w.r.t. SOLAR SYSTEM BARYCENTER (0)
        MARS BARYCENTER (4) w.r.t. SOLAR SYSTEM BARYCENTER (0)
        JUPITER BARYCENTER (5) w.r.t. SOLAR SYSTEM BARYCENTER (0)
        SATURN BARYCENTER (6) w.r.t. SOLAR SYSTEM BARYCENTER (0)
        URANUS BARYCENTER (7) w.r.t. SOLAR SYSTEM BARYCENTER (0)
        NEPTUNE BARYCENTER (8) w.r.t. SOLAR SYSTEM BARYCENTER (0)
        PLUTO BARYCENTER (9) w.r.t. SOLAR SYSTEM BARYCENTER (0)
        SUN (10) w.r.t. SOLAR SYSTEM BARYCENTER (0)
        MERCURY (199) w.r.t. MERCURY BARYCENTER (1)
        VENUS (299) w.r.t. VENUS BARYCENTER (2)
        MOON (301) w.r.t. EARTH BARYCENTER (3)
        EARTH (399) w.r.t. EARTH BARYCENTER (3)
        MARS (499) w.r.t. MARS BARYCENTER (4)
        Start of Interval (ET)              End of Interval (ET)
        -----------------------------       -----------------------------
        1599 DEC 09 00:00:00.000            2201 FEB 20 00:00:00.000
 
(isis) john@localhost:~>


this is a barycenter bsp and can NOT be used for orbits


here is a copy of my Mecury ssc file

Code: Select all


ReferencePoint "Mercury_bary" "Sol"
  {
  Beginning      "1549 12 31 00:00:00.000"
  Ending         "2650 01 25 00:00:00.000"
 
  OrbitFrame     { EclipticJ2000 { Center "SSB"}}
  Visible        true
  Clickable      true
 
  SpiceOrbit
  {
    Kernel       "de436.bsp"
    Target       "1"
    Origin       "0"
    Period        0.25
    BoundingRadius 1e10
    }
   }

 Replace "Mercury" "Sol"
 {
   Texture "Mercury.ctx"
   NormalMap "MercuryNormal.ctx"
   Radius 2440
   
   Timeline
   [
   # Before SPICE
   {
     
     BodyFrame { EquatorJ2000 { Center "Sol" } }
     Ending   "1550 02 27 00:00:00.000"  # add 2 months for orbit drawing
     CustomOrbit "vsop87-mercury"
     CustomRotation "iau-mercury"
   }
   # Spice
   {
     OrbitFrame { EclipticJ2000  { Center "Sol/Mercury_bary" }}
     BodyFrame  { EclipticJ2000 { Center "Sol"              }}
     Ending     "2649 11 25 00:00:00.000"  # less 2 month for orbit drawing
   
     
     SpiceOrbit
     {
       Kernel  "de436.bsp"
       Target  "199"
       Origin  "1"
       Period   0.2441  # earth years
       BoundingRadius 1e10
     }
     
     #CustomRotation "iau-mercury"
     SpiceRotation
     {
       Kernel    [ "pck00010.tpc"  "naif0012.tls"  ]
       Frame     "IAU_MERCURY" 
     }
     }
     # After SPICE
     {       
       BodyFrame { EquatorJ2000 { Center "Sol" } }
       CustomOrbit "vsop87-mercury"
       CustomRotation "iau-mercury"
     }
   ]
   Albedo            0.06
   }




here is a link to my whole solarsystem ssc
( i do need to update it to the current bsp files , i am using some old ones )
https://drive.google.com/file/d/1U5dkWHKA94XGEh2FOsXl91mvA4fgQ069/view?usp=sharing





.

Posted: 22.09.2022, 12:10
by EarthMoon
This page https://en.wikibooks.org/wiki/Celestia/JPL_Ephemerides says that de405.bsp is more precise than de406.bsp ephemeris.

... DE405 is a larger and slightly more precise ephemeris than DE406, but DE406 should be more than accurate enough for most usages. ...

I want to use the most accurary ephemeris .bsp file that is available.

Posted: 22.09.2022, 12:40
by John Van Vliet
the first thing you need to do on any bsp file is to run " brief" on it to get the metadata about the kernel
you will need to copy/past some of that metadata into your ssc file


install c-spice for your OS
https://naif.jpl.nasa.gov/pub/naif/toolkit/C/

install it system wide and make sure that the exicutables ARE in the system $PATH

Posted: 22.09.2022, 12:50
by EarthMoon
I'm trying to run brief.exe, but nothing happens :sad:

I will continue using Celestia's VSOP87 trajectories or .xyz(v) files.

Ahh, I got an idea for a new addon :smile: