Git Product home page Git Product logo

neos.jl's People

Contributors

github-actions[bot] avatar lbenet avatar luedramo avatar perezhz avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

Forkers

luedramo

neos.jl's Issues

Remove JLD dependency

We should aim for a full migration to JLD2, but that requires, among other things, re-generating most artifacts used by NEOs.jl using JLD2 instead of JLD

Add documentation

We already have docstrings thanks to the work done by @LuEdRaMo, and I think we can build on it to get a first version of the NEOs documentation, e.g. via Documenter.

Towards registering NEOs.jl

While trying to register NEOs.jl in the Julia General registry (see relevant NEOs.jl commit, corresponding PR JuliaRegistries/General/pull/71434 and job log) auto-merge didn't work due to several issues:

  • Name of package is not at least 5 characters long
  • The following dependencies do not have a [compat] entry that is upper-bounded and only includes a finite number of breaking releases: DataFrames, HORIZONS, IntervalArithmetic, PlanetaryEphemeris, Query, ReferenceFrameRotations, StaticArrays, StatsBase
  • I was not able to install the package (i.e. Pkg.add("NEOs") failed). See the CI logs for details.
  • I was not able to load the package (i.e. import NEOs failed). See the CI logs for details.
  • Package name similar to 2 existing packages.
    • Similar to NES. Damerau-Levenshtein distance 2 is at or below cutoff of 2. Damerau-Levenshtein distance 1 between lowercased names is at or below cutoff of 1.
    • Similar to NExOS. Damerau-Levenshtein distance 2 is at or below cutoff of 2. Damerau-Levenshtein distance 1 between lowercased names is at or below cutoff of 1.

I'm opening this issue to try to resolve those issues, so that we can finally register NEOs.jl.

Besides discussing the name of the package (I would be in favor of keeping NEOs, but maybe NearEarthAsteroids could be an alternative), I think the other important points would be to fix the compat entries and using consistent bounds on TaylorSeries.jl and TaylorIntegration.jl throughout so that Pkg.add and Pkg.import work.

cc: @lbenet @LuEdRaMo

Avoid type piracy of `SatelliteToolboxTransformations.jl` overloads

Currently, here:

function sv_ecef_to_ecef(

and here:
function sv_ecef_to_eci(

we are overloading methods defined in SatelliteToolboxTransformations.jl to be able to differentiate through those functions using TaylorSeries Taylor1 and TaylorN; which is type piracy. It's not terrible, but I think we should try to avoid it. AFAIU, this is due to products of StaticArray.SMatrix with vectors of <:AbstractSeries sometimes giving Vector{Any} as a result, which is why the results of such products are type annotated in the overloaded methods here. Probably this issue belongs in TaylorSeries, but thought of opening this issue here to discuss and see how we might solve this.

Precompute accelerations and Newtonian potentials

This issue follows from an offline discussion with @lbenet and @LuEdRaMo. Currently, before performing a propagation, we use loadeph to precompute the accelerations and the Newtonian potentials of the perturbers (planets, asteroid, etc.) of a NEO orbit, besides changing the units of the ephemeris themselves from km and km/sec to au, au/day. But now we have NEOs.sseph, which would allow us to precompute these things, so that their computation can be taken out from the integration loop. This can help simplify code (and maybe improve performance?).

TagBot trigger issue

This issue is used to trigger TagBot; feel free to unsubscribe.

If you haven't already, you should update your TagBot.yml to include issue comment triggers.
Please see this post on Discourse for instructions and more details.

If you'd like for me to do this for you, comment TagBot fix on this issue.
I'll open a PR within a few hours, please be patient!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.