Coder Social home page Coder Social logo

ale's People

Contributors

acpaquette avatar amystamile-usgs avatar antonhibl avatar austinsanders avatar chkim-usgs avatar jessemapel avatar jlaura avatar jrcain-usgs avatar kaitlyndlee avatar kberryusgs avatar kelvinrr avatar ladoramkershner avatar oleg-alexandrov avatar paarongiroux avatar rbeyer avatar scsides avatar sgstapleton avatar thareusgs avatar tthatcher95 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ale's Issues

Determine a name for this library.

Moving my comment from the closed PR:

The new library's name is currently set as usgsephem.

I'm sure this is intended as a preliminary name and I don't have any alternative suggestions, but,
if someone said to me "here is an ephemeris software library from the usgs" I would expect to be able to use it to look up the position of an astronomical body, given a time. To be more explicit, I would expect to be able to do something like usgsephem.getCoord('Mars', 2018-01-01:01:01:01, 'J2000') This is not how I currently understand the purpose of this software library. Are we planning to do this and provide default ephemerides to use (de430, etc) ?

Add light-time support to Ale.

ISIS optionally allows light-time correction (adjustment for the time it takes the light to travel from the target to the detector) and more. (see abcorr under: ftp://naif.jpl.nasa.gov/pub/naif/toolkit_docs/C/cspice/spkez_c.html.) Does it make sense to support anything like this in Ale?

Determine logic for number_of_ephemerides

What is an appropriate number of ephemerides to have for line scanners? 5 - 10 lines between nodes? Update the base LS drivers with said number (instead of the hard coded 909 as a kwarg).

ISIS3 table reading code is generating large numbers

Numbers generated from the driver for spiceinit'd cubes are very large can creates what seems like overflow errors when running ImageToGround. I imagine a problem in the table reading code.

examples:

 'sensor_orientation': {'quaternions': [[-1.6566311061288426e+35,
    1.5014938937590877e+23,
    1.6845645495630183e+271,
    -1.1793123275974105e-66] ...
 'sensor_position': {'positions': array([[ 2.80625378e+213, -2.57356275e-206, -1.69599467e-083],
         [ 4.78956857e-187,  8.17356445e+174, -2.41488463e+254],
         [-7.12222820e+097,  3.92626094e-211,  2.23367021e-165]]),
  'velocities': array([[ 3.92381966e+261,  2.26516620e-218, -1.35303564e-225],
         [-2.22062154e+189, -6.77299474e-021,  3.20529426e+001],
         [ 4.20303359e-081, -2.55612308e+148, -1.15863475e+223]]),
  'unit': 'm'},

ALE dumps JSON to string silently

https://github.com/USGS-Astrogeology/ale/blob/master/ale/drivers/__init__.py#L61

This is very non-pythonic to have the library return a serialized string containing JSON. 99.9% of use cases are then going to immediately json.loads this so that further processing can occur or json.dumps it to a file. I am guessing that the latter use case is the one the linked file is seeking to accommodate, but this looks like strange behavior to a consumer (pfeffernusse in this case).

Add support for hermite splines

Out current setup only allows for natural cubic splines, we should add cubic hermite splines because we often have velocities which naturally lends itself towards cubic hermite splines.

ALE conversion of np.nan results in invalid JSON

The serialization of the line_exposure_duration property in the base.py Driver can be np.nan. This is currently being serialized to NaN in the resulting JSON file which is invalid. This should serialize to null.

User Stories to Wiki

I have started a wiki page with user stories. I wonder if the best thing to do isn't to link this issue in there and work to keep these two in sync as we get new user stories submit by folks without write access to the wiki?

MRO driver fails on focal_epsilon

The focal length epsilon in the base driver fails because MRO does not have a focal_lengt_epsilon key. Since the focal length epsilon is pretty instrument specific, the solution is to push the key into the individual drivers.

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.