-
-
Notifications
You must be signed in to change notification settings - Fork 15
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
MetaAlmanac not loading planetary data for 301 (Earth's Moon) #339
Comments
I found a workaround, which is to load a pck11.pca, but this was hard to do because the tutorial link is still to the v0.3 version of that file, and so I had to do a little URL hacking to figure out what I needed to wget. |
Hi Juno, Thanks for the bug report. The tutorials need some updating to the paths, and I suspect the readme might still point to version 3 of the files: I'll fix this in #341. Would it be possible for you to share the files used for creating this planetary constants input file? I'd like to reproduce the issue: from your code, it seems like everything should have worked. Thanks |
They are as listed: |
Yes: would you have a copy of the The GUI is prebuilt for Linux and Windows on Github: https://github.com/nyx-space/anise/actions/runs/11367543965 |
Yeah. Oddly SPICE isn't loading 301 or 399 from pck 10 either, though I see the variables in the file. Here is the output file: And here is the input: pck00010.tpc.txt |
Hey Juno, Has the pck 11 or 08 versions been working for you? I can investigate this issue further at a later date. I'm also a bit surprised that the data present neither in SPICE nor ANISE since it sure looks present in the original tpc file. |
I'm encountering a similar issue. Loading from the default almanac works great but when I attempt to load from local copies of the kernels I encounter the following error:
|
let ctx = Almanac::new("./almanac/de440s.bsp").expect("Could not load bsp");
let loaded_ctx = ctx.load("./almanac/moon_pa_de440_200625.bpc").expect("Could not load bpc");
println!("Planetary data length: {}", loaded_ctx.planetary_data.len()); reports Planetary data length: 0 It looks like For reference, my download script: mkdir -p almanac
cd almanac
curl http://public-data.nyxspace.com/anise/de440s.bsp -O
curl http://public-data.nyxspace.com/anise/v0.4/pck11.pca -O
curl http://public-data.nyxspace.com/anise/v0.4/moon_fk.epa -O
curl http://public-data.nyxspace.com/anise/moon_pa_de440_200625.bpc -O
curl https://naif.jpl.nasa.gov/pub/naif/generic_kernels/pck/earth_latest_high_prec.bpc -O |
Hi Greg, The planetary data in the almanac refers only to the data you'd typically find the SPICE PCK files, including gravity parameters and shape of the ellipsoid. The let ctx = Almanac::new("./almanac/de440s.bsp").expect("Could not load bsp");
let loaded_ctx = ctx.load("./almanac/moon_pa_de440_200625.bpc").expect("Could not load bpc").load("./almanac/pck11.pca").expect("failure pck");
println!("Planetary data length: {}", loaded_ctx.planetary_data.len()); That will print The BPC file only contains the data to rotate from one frame to another. In the case of the Moon PA file, it allows the rotation between the 31008 frame ID and the inertial frame: (This is a screenshot from the ANISE GUI.) |
That worked for me, thanks! In retrospect, I think I had two issues going on:
|
Bug report
Describe the bug
I cannot access lunar planetary constants or frame data through anise.
To Reproduce
Steps to reproduce the behavior:
and then
almanac.describe(spk=True, bpc=True, planetary=True)
does not list 301. I believe this should be inde440.bsp
, but maybe I'm missing something. I spent a bunch of time staring at the documentation for MetaAlmanac and Almanac and couldn't figure this out.Expected behavior
I would expect loading the planetary constants and BPC files should yield planetary data for 301. I should also be able to get the MOON_J2000 frame, but I get the following error with
almanac.frame_info(Frames.MOON_J2000)
:Platform
Linux, Anise 0.4.4
Additional context
This comes from the tutorial, which suggests the following should work:
The tutorial may need to be updated, or else this code simply doesn't work.
The text was updated successfully, but these errors were encountered: